![]() |
Form als .dll ???
Hallo, :hi:
Ich hab da mal ne Frage. Kann ich eine form als dll Laden ? Und vor allem wie? MfG |
Re: Form als .dll ???
du kannst eine DLL erstellen, ein neues Forumular dem Projekt hinzufügen, und dann eine funktion exportieren, die dir eine Instanz deiner Formularklasse zurückgibt.
z.B.
Delphi-Quellcode:
function GiveMeAFormular: TForm;
begin application.Create(TForm1, result); end; dann kannst du im hauptprogramm das formular folgendermaßen anzeigen:
Delphi-Quellcode:
procedure ShowFormFromDLL;
begin with GiveMeAFormular do begin ShowModal; Free; end; end; |
Re: Form als .dll ???
Kann ich den ein Pannel als dll in meine form laden ?
MfG |
Re: Form als .dll ???
im Prinzip des gleiche wie Chimaira gesagt hat mit dem Formular nur halt mit Tpanel und nicht ShowModal sondern parent, ... was man halt so braucht.
PS: Wenn du sagst des Panel ist ein "kind" vom Formular dann wird des Panel freigegeben wenn des Formular freigegeben wird (oder? :stupid: *frage zu anderen DP-Mitglieder*) |
Re: Form als .dll ???
hab die form jetzt in eine dll gepackt. wie kann ich sie per button aufrufen?
MfG |
Re: Form als .dll ???
Zitat:
![]() |
Re: Form als .dll ???
Danke erstmal für deinen tip. irgend wie läuft mein code zum aufrufen nicht (undefinierter bezeichner dllformshow)
Delphi-Quellcode:
MfG{$R *.dfm} procedure Test(s: PChar); stdcall; external 'Project1.dll'; procedure TForm1.Button1Click(Sender: TObject); begin DLLFormShow; end; end; |
Re: Form als .dll ???
Du hast die Prozedur oben Test genannt. (Ich hoffe, sie heißt in der DLL auch Test mit dem Parameter PChar)
somit musst du die funktion Test(irgendeinPChar) auch aufrufen. Außer delphi spinnt, weil du tatsächlich irgendwo in deinem quellcode vor dem aufruf die funktion dllShowForm deklariert hast ;) |
Re: Form als .dll ???
da hab ich wohl einiges vergessen .
meine dll
Delphi-Quellcode:
function ?? ich hab da ne procedure library Project1; uses Forms, Unit1 in 'Unit1.pas' {dllform}; {$R *.res} procedure DLLFormShow; var dllForm: TForm; begin dllForm:=TForm.Create(Application); try dllForm.ShowModal; finally dllForm.Release; end; end; exports dllFormshow; end. kann mir das mal jemand erklären? MfG |
Re: Form als .dll ???
dann musst du die funktion oben im programm, wo du sie aus der dll lädst, auch als dllShowForm laden
du hattest folgenden Code im Programm
Delphi-Quellcode:
das müsste werden:
procedure Test(s: PChar); stdcall; external 'Project1.dll';
Delphi-Quellcode:
procedure DLLFormShow; stdcall; external 'Project1.dll';
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz