Ich habe 2 StringGrids (einmal 9x9 und einmal 1x3) welche beide mit Grafiken belegt werden.
Da hatte ich das Problem, dass sie flackern, wenn man die Maustaste loslässt. Gefixt habe ich das indem ich beim SelectCell StringGrid1.BeginUpdate drin habe, bei MouseUp StringGrid1.EndUpdate.
Nur habe ich jetzt (bei Scrollbars in den Eigenschaften ist bei beides ssNone eingestellt) rechts und unten eine Scrollbar die keinen Effekt hat. Sobald ich die Scrollbar einmal anklicke verschwindet sie. Die Größe des StringGrids ist auf die Anzahl der Zellen und deren Größe angepasst, es wird also alles gezeigt (bei dem 9x9 haben die Zellen Maße von 80x80 und das StringGrid ist insgesamt 720x720, das 1x3 StringGrid hat Zellen mit 50x50 und ist insgesamt 50x150).
Wäre gut, wenn hier jemand einen Tipp hat, entweder um das Flackern (genau genommen eine Bildaktualisierung bei der aber alle Zellen kurz weiß werden) loszuwerden oder damit die Scrollbars nicht erscheinen.
Hier mal noch der Quellcode für das 1x3 StringGrid
Code: Alles auswählen
procedure TForm2.StringGrid1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
StringGrid1.EndUpdate;
Timer3.Enabled:=true; //Markiert die ausgewählte Zelle farbig und färbt die anderen Zellen in der Ausgangsfarbe
end;
procedure TForm2.StringGrid1SelectCell(Sender: TObject; aCol, aRow: Integer;
var CanSelect: Boolean);
begin
StringGrid1.BeginUpdate;
Schwierigkeitsgrad:=aCol;
end;