Einzelnen Beitrag anzeigen

Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#15

AW: [OOP] Ableiten von TImage: Wann hat mein Objekt eine Größe?

  Alt 19. Okt 2010, 20:40
Delphi-Quellcode:
TYPE
  TGraphPaper = CLASS(TImage)
...
  CONSTRUCTOR Create(MyParent: TWinControl; Title: STRING); REINTRODUCE;
  PROCEDURE SetBounds(ALeft, ATop, AWidth, AHeight: INTEGER); OVERRIDE;
...
  private
   created: boolean;
...
END;
Delphi-Quellcode:
CONSTRUCTOR TGraphPaper.Create(MyParent: TWinControl; Title: STRING);

BEGIN
  created := false;
  INHERITED CREATE(MyParent);
...
  created := true;
END;
Delphi-Quellcode:
PROCEDURE TGraphPaper.SetBounds(ALeft, ATop, AWidth, AHeight: INTEGER);
BEGIN
  INHERITED SetBounds(ALeft, ATop, AWidth, AHeight);
  if created then Zeichne;
...
Damit würde das Zeichnen nicht während der Erstellung ausgeführt werden.

Alternativ kannst Du doch die Zeichnen-Funktion einfach abbrechen, wenn Width oder Height 0 sind.
Das ist auch eine Idee, allerdings sollte man dann auch negative Werte ausfiltern. Das könnte/sollte man eventuell auch zusätzlich machen.
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat