.. aus der
Hilfe "Ruft das Ereignis OnFileOkClick auf, sofern es definiert ist. "
so funktioniert es.
Delphi-Quellcode:
type
TExtFileOpenDialog = class(TFileOpenDialog)
private
protected
function DoOnFileOkClick: Boolean; override;
public
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
fFileOpenDialog := TExtFileOpenDialog.Create(nil);
try
fFileOpenDialog.OnFileOkClick := onFileOkClick; // wenn hier nichts zugewiesen wird, wird doFileOnClick nicht ausgeführt.
fFileOpenDialog.Execute;
finally
fFileOpenDialog.Free;
end;
end;
procedure TForm1.onFileOkClick(sender: TObject; var canClose: Boolean);
begin
showMessage('---test---');
canClose := true;
end;
{ TExtFileOpenDialog }
Im Prinzip bräuchte man dann nicht die doOnFilOkClick Methode überschreiben, sondern nur ein entsprechendes Ereignis zuweisen.
Grüße
Klaus
function TExtFileOpenDialog.DoOnFileOkClick: Boolean;
begin
showMessage('123');
end;