Составители:
Рубрика:
24
TMyComponent_Class;
end.
Здесь стрелкой показано место, куда необходимо поместить список методов класса
TMyComponent, которые необходимо вынести в интерфейс компонента.
Примечание: в описываемой реализации программы convert_pas список методов не
должен содержать комментариев и таких ключевых слов как: stdcall, safecall, cdecl, const,
abstract, а сам входной файл конвертации имеет следующий синтаксис:
unit <unit_name>;
interface
uses <int_use_name> {, <int_use_name>};
classes
{<class_name> = class( <parent_class> ) {<methods_list>} end;}
end;
implementation
uses <imp_use_name> {, <imp_use_name>};
end.
Здесь: <unit_name> − названием модуля; <int_use_name> − имена подключаемых модулей
в интерфейсную часть; <class_name> − имя класса-компонента; <parent_class> − имя клас-
са-предка; <methods_list> − список методов класса; <imp_use_name> − имена подключае-
мых модулей в implementation-часть генерируемого модуля.
Для генерации модуля TMyComponent_LuaObject.pas необходимо выполнить сле-
дующую строку:
convert.bat TMyComponent_LuaObject,
после чего будет создан файл TMyComponent_LuaObject.pas.
5. Подключить сгенерированный модуль TMyComponent_LuaObject.pas
к проекту,
а в теле проектного файла в разделе экспортируемых функций добавить:
TMyComponent_ClassFunc name 'TMyComponent'
О том, как использовать созданный компонент (библиотеку) можно прочитать в
«8.3. Использование библиотеки компонентов в LUA».
Более подробно с приемами перевода классов Delphi в компоненты можно изучив
проект COMA\sdk\Delphi\(Samples)\TMyComponent1\TMyComponent1_lib.dpr.
8.5. Представление интерфейсного типа Delphi в виде
COMA-компонента
Перевод интерфейсного типа Delphi в компонент можно осуществлять аналогично
классу Delphi (см. 8.4. Представление класса Delphi в виде COMA-компонента). Однако,
необходимо учитывать счетчик ссылок интерфейсного типа, а также обязательно давать
компоненту имя, которое начинается с буквы «I» (например: IMyComponent).
Пример реализации компонента на основе интерфейсного типа Delphi можно по-
смотреть в проекте COMA\sdk\Delphi\(Samples)\IMyComponent1\IMyComponent1_lib.dpr.
TMyComponent_Class; end. Здесь стрелкой показано место, куда необходимо поместить список методов класса TMyComponent, которые необходимо вынести в интерфейс компонента. Примечание: в описываемой реализации программы convert_pas список методов не должен содержать комментариев и таких ключевых слов как: stdcall, safecall, cdecl, const, abstract, а сам входной файл конвертации имеет следующий синтаксис: unit; interface uses {, }; classes { = class( ) { } end;} end; implementation uses {, }; end. Здесь: − названием модуля; − имена подключаемых модулей в интерфейсную часть; − имя класса-компонента; − имя клас- са-предка; − список методов класса; − имена подключае- мых модулей в implementation-часть генерируемого модуля. Для генерации модуля TMyComponent_LuaObject.pas необходимо выполнить сле- дующую строку: convert.bat TMyComponent_LuaObject, после чего будет создан файл TMyComponent_LuaObject.pas. 5. Подключить сгенерированный модуль TMyComponent_LuaObject.pas к проекту, а в теле проектного файла в разделе экспортируемых функций добавить: TMyComponent_ClassFunc name 'TMyComponent' О том, как использовать созданный компонент (библиотеку) можно прочитать в «8.3. Использование библиотеки компонентов в LUA». Более подробно с приемами перевода классов Delphi в компоненты можно изучив проект COMA\sdk\Delphi\(Samples)\TMyComponent1\TMyComponent1_lib.dpr. 8.5. Представление интерфейсного типа Delphi в виде COMA-компонента Перевод интерфейсного типа Delphi в компонент можно осуществлять аналогично классу Delphi (см. 8.4. Представление класса Delphi в виде COMA-компонента). Однако, необходимо учитывать счетчик ссылок интерфейсного типа, а также обязательно давать компоненту имя, которое начинается с буквы «I» (например: IMyComponent). Пример реализации компонента на основе интерфейсного типа Delphi можно по- смотреть в проекте COMA\sdk\Delphi\(Samples)\IMyComponent1\IMyComponent1_lib.dpr. 24