HI Leute, also ich möchte in mein Project gerne Frames automatisch durch Packages einbinden.
Hier mein
Unit , welche ich als
Package kompiliere:
Delphi-Quellcode:
unit test;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
Ttestframe =
class(TFrame)
Label1: TLabel;
procedure FrameClick(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
procedure execute(parent_f:TWinControl; caption_f:
String);
procedure destroy();
var testframe:Ttestframe;
implementation
{$R *.dfm}
procedure execute(parent_f:TWinControl; caption_f:
String);
begin
showmessage('
bin da');
testframe := Ttestframe.Create(
nil);
testframe.Parent := parent_f;
testframe.Visible := true;
testframe.Show();
end;
procedure destroy();
begin
testframe.Free;
end;
exports
execute,visibility,destroy;
end.
Und hier der Codeteil den ich nutze umd das
Package einzubinden
Delphi-Quellcode:
procedure add_tab();
var
temp_handle:HModule;
executes: procedure(parent_f:TWinControl; caption_f:String);
begin
//PlugIn - Laden
temp_handle := loadpackage('K:\packages\test\Package1.bpl');
@executes := GetProcAddress(temp_handle,'execute');
executes(frm_main.sb_right,'test');
end;
das übergeben twincontrol ist dabei eine scrollbox in der der frame reingeladen werden soll, nun da kuriose:
die showmessage-funktion wird aufgerufen und es erschein 'bin da' bei der ausführung. zusätzlich verändert die scrollbox auch ihre größe bleibt jedoch leer ?
jemand ideen ?