Du hast doch in deinem TDruckerAuswahl schon ein Property OnClick mit der zugrundeliegende Variablen fPEvent (Wieso heißt die eigentlich nicht fOnClick?) Wird die irgendwo benutzt?
Damit würde ich so etwas machen:
Im aufrufenden Programm
Delphi-Quellcode:
procedure TForm1.OnDruckerAuswahlClick(Sender:TObject);
begin
lblDrucker.Caption := DruckerListe.Drucker;
end;
und
Delphi-Quellcode:
DruckerListe := TDruckerAuswahl.Create(fglobals.Settingsfile, PanPrinters);
DruckerListe.OnClick := OnDruckerAuswahlClick;
Und in deinem GDruckerAuswahlClick :
Delphi-Quellcode:
procedure TDruckerAuswahl.GDruckerAuswahlClick(Sender: TObject);
begin
... // Drucker auswählen
if assigned(fPEvent) then
fPEvent(Sender);
end;
Spart zwar keine Codezeilen, eher im Gegenteil, ist aber übersichtlicher.