КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Implementation
Var Type Uses Interface Begin Begin Begin Begin Var Begin Implementation Var Interface End. Begin Второй файл проекта (главный модуль): unit main; uses Windows, SysUtils, LDefin2D, ksConstTLB, ksAuto, ksTLB, former, Forms; procedure LIBRARYENTRY(command: WORD); Pascal; function LIBRARYNAME: PChar; Pascal; function LIBRARYID: Cardinal; Pascal; Kompas: KompasObject; iDocument2D: ksDocument2D; // LibraryName function LIBRARYNAME: PChar; pascal; Result:= 'Втулка'; end; procedure Run; form: TMainForm; Application.Handle:= kompas.ksGetHWindow; kompas.ksEnableTaskAccess(0); // закрыть доступ к компасу // создаем форму form:=TMainForm.Create(Application); form.ShowModal; // вывод формы kompas.ksEnableTaskAccess(1); // открыть доступ к компасу Application.Handle:= 0 end; //------------------------------------------------------------------------------------------ procedure LIBRARYENTRY (command:WORD); pascal; Kompas:= KompasObject(CreateKompasObject); if Kompas <> nil then iDocument2D:= ksDocument2D(Kompas.ActiveDocument2D()); if iDocument2D=nil then Kompas.ksMessage('Текущий документ не является чертежом или фрагментом') else Run; iDocument2D:= nil; end; Kompas:= nil end; //------------------------------------------------------------------------------------------ function LIBRARYID: UINT; pascal; Result:= 100; end; end.
Рис.6.5. Форма библиотеки «Втулка»
Третий файл проекта - модуль формы(рис.6.5): unit former; Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,LDefin2D, ksConstTLB, ksAuto, ksTLB; TMainForm = class(TForm) Edit1: TEdit; Edit2: TEdit; Edit4: TEdit; Button2: TButton; Button3: TButton; Label1: TLabel; Label2: TLabel; Label3: TLabel; procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end; MainForm: TMainForm; uses main; {$R *.dfm} //-------------------------------------------------------------------------------------- procedure DrawBusher(x0,y0:double; nm:string; D1,D2,L:double); // D1 - внутренний диаметр; D2 - наружный диаметр; L - длина втулки // x0,y0 - координаты левого нижнего угла вида; mn - имя вида procedure MakeView(x0,y0:DOUBLE; nm:STRING); var par:ksViewParam; n:INTEGER;
Дата добавления: 2014-11-29; Просмотров: 364; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |