Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by hanspeter,
17. Sep 2007
Das geht genauso.
Das Interface in beiden einbinden. Im Host also
type
TForm1 = class(TForm, ICanClosePlugin)
Im Plugin dann (Host as ICanClosePlugin).Machewas
Im Demobeispiel "SelfClose" ist ein ausprogrammiertes Beispiel, wie man vom Plugin auf den Host zugreift.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by hanspeter,
17. Sep 2007
Ich habe es mal schnell in ein bestehendes Projekt eingebunden und habe kein Problem.
1. Das Interface
type
IListBoxInterface = interface
procedure SetEditField(Parent: TWinControl;Edit: TEdit);
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by hanspeter,
17. Sep 2007
Ja klar.
Definiere in Plugin und Host ein Interface und dann z.B. im Plugin (Host as ICanClosePlugin).CloseMe(GetInstanceID);
Beispiel in "SelfClose".
Eine einfache Message kann direkt gesendet werden.
Host.SendMessage(Self, 1, PChar(aMessage));
Die Hostkomponente hat ein Ereignis für den Empfang des Ereignisses.
Praktisch ist es so, das man ein beliebiges Interface declarieren kann....
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by hanspeter,
4. Sep 2007
Ich bin im Moment noch am Experimentieren.
Macht aber keinen schlechten Eindruck.
Ich lasse mir das Framwork im Moment noch komplett vom Witzard generieren.
Möchte jetzt halt mehrfach benötigte eigene Klassen auslagern.
Das soll weniger ein Plugin System werden, sondern eine Programm-Modularisierung
erzeugen.
Gruß Peter
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by hanspeter,
3. Sep 2007
Hallo,
hat verwendet wer dieses Tool und hat schon Erfahrung?
Ich bin gerade beim ausprobieren und bekomme eine Sache nicht hin.
In dem Plugin deklariere ich eine Klasse und möchte diese im Host verwenden.
Wie geht das?
Also Plugin: