Announcement

Collapse
No announcement yet.

Performance Probleme mit PictureBox und Gif-Animationen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Performance Probleme mit PictureBox und Gif-Animationen

    Hallo, Leute!

    Ich hab ein, zwei kleine Probleme:
    Ich erstelle ein Formular, das in PictureBoxen angezeigte Gif-Animationen enthält.
    Mein PC ist ziemlich rechenstark, jedoch wird er sofort zu 50% belastet, sobald 3 oder 4 Animationen gleichzeitig laufen.

    Wie zeigt man Animationen an, ohne, das der PC direkt in die Knie gezwungen wird? Ich habe vor, Formbasierte kleine Spiele zu programmieren, die dann natürlich auch nett aussehen sollen.

    2. Problem (das warscheinlich mit dem ersten zusammenhängt):
    Wenn ich das aktive Formular auf dem Desktop umherschiebe und es andere Formulare überlagert, bekomme ich häßliche weiße kästchen in meinen Punktureboxen, der PC rechnet unheimlich nach, das Formular ruckelt und muss sich wieder neu aufbauen.

    Wie unterbinde ich dieses neu-aufbauen und nachrechnen, so das die Grafiken einfach bestehen bleiben?

  • #2
    Hallo, nochmal!
    Entweder ist das Problem nicht lösbar, oder es hat was mit dem übermäßig oft auftretenden Paint-Ereignissen zu tun.

    Ich benutze mittlerweise den ImageAnimator in Threads, jedoch wird das Paint-Ereignis zu oft ausgelöst.
    Ich hab mal gehört, das das system von Zeit zu zeit diese Ereignisse auslöst, ohne triftigen Grund.Zusätzlich wird es bei jedem Frame-Wechsel und dann nochmal für jedes weitere Steuerelement auf dem Form ausgelöst.

    Ich will ein Formular, das höchstens 10 mal in der Sekunde aktualisiert wird. Ansonsten gar nicht.

    Wie unterbindet man Paint-Ereignisse? Ist das vielleicht die Lösung?

    -Ich bin weiterhin für Tips zu haben und dankbar

    Comment


    • #3
      Noch was.
      Ich weis, das man in einem Formular Duble Buffering für Grafiken aktivieren kann.

      Wie geht das in einzelnen Steuerelementen. Ich habs versucht aber die Parameter/Funktionen sind geschützt und können nicht manipuliert werden.
      Gibt es eine Funktion/Klasse, mit der ich Double oder Multi-Buffering in einem Steuer-Element wie z.B. PictureBox oder Panel simulieren kann?

      -Danke nochma

      Comment

      Working...
      X