Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: Parameterübergabe Sender: TObject wie?

  Alt 25. Mai 2011, 10:15
ich habe folgenden Quellkode, wo ich aus TfrmMain den Procedure frmMain.Zeige(frmMain); aufrufe => kein Problem gibt er mir den 'Hallo' String aus im TfrmMain.

Frage: wenn ich aus Tform1 frmMain.Zeige(form1); aufrufe => zeigt er den 'Hallo' String nicht aus im form1. Warum??

Delphi-Quellcode:
Procedure TfrmMain.Zeige(Sender: TObject);
begin
  with Sender do
    begin
      Canvas.TextOut(X, Y, 'Hallo');
    end
end
Tja, da haben wir das böse WITH, denn eigentlich sieht es so aus, da TObjekt kein Canvas besitzt.
Delphi-Quellcode:
Procedure TfrmMain.Zeige(Sender: TObject);
begin
  with Sender do
    begin
      Self.Canvas.TextOut(X, Y, 'Hallo');
    end
end
Es wird also erfogreich gezeichnet, aber eben immer nur auf der Form, worin diese Zeichenmethode rumliegt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat