Einzelnen Beitrag anzeigen

Ayumi

Registriert seit: 20. Apr 2005
18 Beiträge
 
#1

Problem mit onSelectCell-Eigenschaft beim stringgrid

  Alt 5. Okt 2006, 15:38
Hallo,

Wenn der Anwender auf die Spalte 0 des StringGrids klickt, soll die ganze Zeile markiert werden.

Jetzt habe ich folgendes Problem: Wenn der Anwender irgendwo ins stringgrid klickt und danach in die Spalte 0, reagiert mein Programm nicht. Erst beim zweiten Klick auf die Spalte 0 wird die ganze zeile markiert. Wenn der Anwender gleich danach in einer anderen Zeile in spalte 0 klickt, wird die ganze Zeile sofort markiert. Sobald der Anwender aber wieder irgendwo anders ins Stringgrid klickt und danach in Zeile 0, tritt das Problem wieder auf?

Hat dafür einer eine Erklärung?


Hier ist der Programm-Code:

Delphi-Quellcode:
procedure TForm1.GridSelectCell( Sender : TObject;
                                  ACol,
                                  ARow : Integer;
                              var CanSelect : Boolean);
begin
if Grid.cells[1,1] = 'then
    exit
  else
    SelectRowInCol0(Acol,ARow,0);
end;


procedure TForm1.SelectRowInCol0(const ACol, ARow, titelzeile : integer);
begin
 if (ACol=0) and (ARow>titelzeile) then begin
  Grid.Options := Grid.Options + [goRowSelect];
  Grid.Options := Grid.Options + [goRangeSelect];
 end
 else begin
  Grid.Options:= Grid.Options - [goRowSelect];
  Grid.Options:= Grid.Options - [goRangeSelect];
 end;
end;
  Mit Zitat antworten Zitat