Einzelnen Beitrag anzeigen

Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

Re: mmTimer mit Paintbox-Problem bei Icy-Tower-Clon

  Alt 15. Jul 2008, 01:53
Du hast mit Bordmitteln min. 5 Alternativen:
1.) auf einem Image zeichen
- kann flackern
2.) auf einer Paintbox zeichnen
- flackert
3.) abwechselnd auf 2 Bitmaps zeichnen. Das Bitmap, auf dem nicht gezeichnet wird, steht bereit um auf einer Paintbox ausgegeben zu werden
das ist double buffering selbst gemacht
4.) man zeichnet auf ein Bitmap und kopiert es als Ganze in ein Image
5.) Image vor Updates sperren, auf Image zeichnen, Sperre aufheben

Wichtig ist, dass deine Zeichenprocedure ein TCanvas-Objekt als Input entgegennimmt.
Damit bleibst du flexibel und kannst jede der obigen Alternativen ausprobieren.

Hast du denn die Paintbox richtig verwendet??
Gezeichnet wird nur und auschliesslich im Event OnPaint!
Wenn man will, dass die Paintbox neu gezeichnet wird, muss man Paintbox.Invalidate aufrufen.

Zu deinen Fehlern und Abstürzen ist zu sagen, das liegt wahrscheinlich an einer unsauberen Programmierung.
Ausserdem ist ein Timerinterval von 1/25 oder gar 5ms zu schnell für eine normale VCL-Anwendung.
  Mit Zitat antworten Zitat