• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

как использовать метод KompasObject::GetParamStruck

Автор Amfaromah, 07.04.09, 14:54:06

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Amfaromah

Объясните плиз как использовать метод KompasObject::GetParamStruck и что вообще значат два двоеточия, кто знает напишите плиз пример??????

yarikv

Пример для получения формата и кратности текущего чертежа. здесь используется эта функция

library Format_kratnost;

uses SysUtils, Windows, Classes, LDefin2D, LDefin3D, ksAuto, ksTLB, ksConstTLB;


{$E rtw}

{$R *.res}

var iKompas: KompasObject;

function LibraryName: PChar; pascal;
begin
Result:='Формат и кратность';
end;

procedure LibraryEntry(command: WORD); pascal;
var
iDoc2D: ksDocument2D;
iDocTxt: ksDocumentTxt;
iDocPar: ksDocumentParam;
iTextDocumentParam: ksTextDocumentParam;
iSheetPar: ksSheetPar;
iStandartSheet: ksStandartSheet;
format, kratnost: integer;
begin
iKompas:=KompasObject(CreateKompasObject);
if iKompas = nil then Exit;

case iKompas.ksGetDocumentType(0) of
//получение формата и кратности чертежа
lt_DocSheetStandart:
begin
iDoc2D:=ksDocument2D(iKompas.ActiveDocument2D);
iDocPar:=ksDocumentParam(iKompas.GetParamStruct(ko_DocumentParam));
iDoc2D.ksGetObjParam(iDoc2D.reference, iDocPar, ALLPARAM);
iSheetPar:=ksSheetPar(iDocPar.GetLayoutParam);
iStandartSheet:=ksStandartSheet(iSheetPar.GetSheetParam);
format:=iStandartSheet.format;
kratnost:=iStandartSheet.multiply;
iKompas.ksMessage('А'+IntToStr(format)+'х'+IntToStr(kratnost));
end;
//получение формата и кратности текстового документа
lt_DocTxtStandart:
begin
iDocTxt:=ksDocumentTxt(iKompas.ActiveDocumentTxt);
iTextDocumentParam:=ksTextDocumentParam(iKompas.GetParamStruct(ko_TextDocumentParam));
iDocTxt.ksGetObjParam(iDocTxt.reference, iTextDocumentParam, ALLPARAM);
iStandartSheet:=ksStandartSheet(iTextDocumentParam.GetSheetParam);
format:=iStandartSheet.format;
kratnost:=iStandartSheet.multiply;
iKompas.ksMessage('А'+IntToStr(format)+'х'+IntToStr(kratnost));
end;

end;

iKompas:=nil;
end;

Exports
LibraryName name 'LIBRARYNAME',
LibraryEntry name 'LIBRARYENTRY';


begin
end.