Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.140 Beiträge
 
Delphi 12 Athens
 
#17

AW: 2 Proceduren vereinen

  Alt 13. Apr 2012, 13:24
Wobei Viele auch gerne sowas machen:
Delphi-Quellcode:
procedure THaupt_Form.BtnPrintClick(Sender: TObject);
begin
  //Druckbefehl
end;

procedure THaupt_Form.Drucken1Click(Sender: TObject);
begin
  if PrintDialog1.Execute then
    BtnPrintClick(nil);
end;
Und das mit dem Button in der Prozedur.
Das ist gäniger Alltag ... schließlich ist der Sender ja dafür da, also daß man ihn verwenden und/oder vergleichen kann.

Man könnte aber auch das Property Tag nutzten, also das Property für den Programmierer, welches man z.B. bei Drucken1 auf 1 setzt und dann abprüft.
Delphi-Quellcode:
procedure THaupt_Form.Drucken1Click(Sender: TObject);
begin
  if ((Sender as TComponent).Tag <> 1) or PrintDialog1.Execute then
  begin
    //Druckbefehl
  end;
end;
Wobei der Vergleich über die Variable aber einfacher, übersichtlicher, verständlicher und vorallem fehlerunanfälliger ist, gegenüber dem Tag.


Aber wenn man die Variante mit procedure THaupt_Form.Druckbefehl; OOP-mäßig noch weiter fortführt, dann landet am Ende der komplette Funktions-Code in mindestens einer eigenen Klasse.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat