Вы можете помещать простые формы в DLL на этапе разработки. Это можно сделать
с формами, полностью готовыми к работе и не требующими доработки. Вот пример
DLL, которая создает, отображает и освобождает форму. В примере была взята
экстра-простая форма для того, чтобы показать, что она может быть использована
любым языком, не только в Delphi. Как я и обещал, я преподнес вам идею. Гвоздь
программы в том, что пока вы проектируете свое приложение, форма из вашей DLL в
Delphi *не* загружается. Только не забудьте в конце разработки ее скомпилить
:-)) .
Имейте в виду, что все функции в DLL-примере 32-битные. Т.е. после получения
с помощью CreateTheForm указателя на форму, необходимые функции получат в свои
руки полное 32-битное управление формой. Вероятно вам это и не понадобится, но
это пример того, КАК нужно делать...
library Formdll;
uses
SysUtils,
Forms,
Formdllu in "FORMDLLU.PAS" {Form1};
function CreateTheForm: Pointer; export;
begin
Result := TForm1.Create(nil);
end;
procedure LoadTheForm(P: Pointer; S1, S2, S3: PChar); export;
beginwith TForm1(P) dobegin
Edit1.Text := StrPas(S1);
Edit2.Text := StrPas(S2);
Edit3.Text := StrPas(S3);
end;
end;
function ShowTheForm(P: Pointer): Boolean; export;
const
mrOK = 1;
begin
Result := TForm1(P).ShowModal = mrOK;
end;
procedure ReadTheForm(P: Pointer; S1, S2, S3: PChar); export;
beginwith TForm1(P) dobegin
StrPCopy(S1, Edit1.Text);
StrPCopy(S2, Edit2.Text);
StrPCopy(S3, Edit3.Text);
end;
end;
procedure DestroyTheForm(P: Pointer); export;
begin
TForm1(P).Free;
end;
exports
CreateTheForm INDEX 1,
LoadTheForm INDEX 2,
ReadTheForm INDEX 3,
ShowTheForm INDEX 4,
DestroyTheForm INDEX 5;
beginend.
Если Вас заинтересовала или понравилась информация по разработке на Delph - "Помещение формы в DLL", Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу: Так же Вы можете задать вопрос по работе этого модуля или примера через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!