Einzelnen Beitrag anzeigen

SMO

Registriert seit: 20. Jul 2005
178 Beiträge
 
Delphi XE6 Professional
 
#5

Re: Wann wird onpaint ereignis Ausgelöst?

  Alt 16. Sep 2005, 18:30
Der Unterschied besteht darin, dass Form.OnPaint aufgerufen wird, wenn ein Teil der Form neu gezeichnet werden muss, und PaintBox.OnPaint, wenn ein Teil der PaintBox neu gezeichnet werden muss. Wenn die PaintBox die ganze Form bedeckt mag da kein Unterschied sein, im Normalfall allerdings schon.

Stell dir mal vor, du hast eine PaintBox auf einer Form platziert, die nur die linke, obere Ecke bedeckt. Nun bewegst du ein anderes Fenster über die rechte untere Ecke deiner Anwendung. Das hat zur Folge, dass Form.OnPaint aufgerufen wird, denn ein Teil der Form wurde vom anderen Fenster übermalt und muss jetzt wiederhergestellt werden. Wenn du dort nun den Inhalt der PaintBox neu zeichnest, ist das überflüssig und Verschwendung von Ressourcen/Rechenzeit, denn die PaintBox wurde ja gar nicht vom anderen Fenster übermalt und muss deswegen auch nicht aufgefrischt werden.
  Mit Zitat antworten Zitat