Witam!
W projekcie mam dwie formatki: Form1 i Form2. Form2 jest tworzona dynamicznie:
var
F: TForm2;
begin
F:=TForm2.Create(nil);
try
{...}
F.ShowModal;
finally
F.Free;
end;
end;
Na fomatce Form1 mam TJvPluginManager z pakietu JEDI VCL.
PYTANIE:
Jak z poziomu plugina odwołać się do formatki Form2 (zakładam że jest ona już utworzona i wodoczna). Odwołanie się do głównej formatki aplikacji jest proste:
{JvPlugin1.}HostApplication.MainForm.xxx
ale jak odwołać się do Form2. Próbowałem tak ale zawsze dostawałem błąd dostępu "Access Violation":
{kod w komendzie pierwszej pluginu - JvPlugin.Comand1OnExecute}
var
F: TForm;
C: TComponent;
begin
F:=TForm(HostApplication.MainForm.FindComponent('Form2'));
C:=F.FindComponent('Button1');
TButton(C).Caption:='blebleble';
end;
LUB
var
F,C: TComponent;
begin
F:=HostApplication.MainForm.FindComponent('Form2');
C:=TForm(F).FindComponent('Button1');
TButton(C).Caption:='blebleble';
end;
Probowałem jeszcze innymi sposobami ale jakoś mi nie wychodziło.
Czy ktoś już robił pluginy do swojej aplikacji i mógłby pomóc [???]