Einzelnen Beitrag anzeigen

Schorschi5566

Registriert seit: 6. Feb 2006
197 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#1

StringGrid eigene DrawCell macht Fehler beim Scrollen

  Alt 13. Aug 2010, 22:49
Hallo DP,

wie der Titel schon sagt, habe ich eine eigene DrawCell-Routine für eine TStringGrid-Ableitung geschrieben. Funktioniert prima, solange man nicht scrollt.

Beim Scrollen des Grids (mit Maus oder Tasten ist egal), werden manche Zeilen nicht richtig bzw. verschoben übereinander gezeichnet. Das betrifft aber nur manche Zeilen und nicht das ganze Grid. So, als ob er beim Zeichnen durch das Scrollen unterbrochen wird und dann an falscher Stelle weitermalt.

Führt man "händisch" einen Repaint oder Invalidate aus, dann ist die Ansicht wieder in Ordnung.

Repaint-Probleme wurden hier schon massig beschrieben, aber ich finde bisher keine Lösung für mein Problem.

Ich habe schon was zum ComponentState gefunden, was aber bisher nicht zur Lösung geführt hat.

Meine Frage ist jetzt eigentlich, wo ich den Aufruf von Repaint oder Invalidate einbauen muss, damit es nicht zur wilden Flackerei kommt weil DrawCell ständig wieder ausgelöst wird.

Wäre schön, wenn jemand 'ne Lösung hätte.


Viele Grüße,
Uwe
Uwe
"Real programmers can write assembly code in any language." - Larry Wall
Delphi programming rocks
  Mit Zitat antworten Zitat