Einzelnen Beitrag anzeigen

Benutzerbild von overmoon
overmoon

Registriert seit: 8. Aug 2003
Ort: Passau
51 Beiträge
 
Delphi 6 Personal
 
#4

Re: Durch Befehl eine bestimmte Zeile im StringGrid markiere

  Alt 3. Okt 2003, 10:49
Bzw., wenn du über eine andere Option arbeiten möchtest:

Delphi-Quellcode:
procedure TFormMain.WaehleZeile(Zeile: Integer);
var newSel: TGridRect;
begin
    //Einstellung, dass man immer eine ganze Zeile auswählt:
    StringGrid.Options := StringGrid.Options + [goRowSelect];
    //Definition des selektierten Bereiches
    newSel.Left := StringGrid.FixedCols;
    newSel.Right := StringGrid.ColCount-1;
    newSel.Top := Zeile;
    newSel.Bottom := Zeile;
    StringGrid.Selection := newSel;
end;

procedure TFormMain.BitBtnAuswahlClick(Sender: TObject);
begin
     WaehleZeile(2);
end;
Achja:
Und oben stimmt die Begrenzung der For-Schleife nicht:

Anstatt:

Delphi-Quellcode:
For r:=0 to StringGrid1.RowCount+1 do
  For c:=0 to StringGrid1.ColCount+1 do
Muss es heißen:

Delphi-Quellcode:
For r:=0 to StringGrid1.RowCount-1 do
  For c:=0 to StringGrid1.ColCount-1 do
Außerdem solltest du anstatt

break; lieber
exit; schreiben, da er mit break; nur aus dem aktuellen Block heruasspringt, also aus der inneren For-Schleife. Mit Exit wird die gesamte Prozedur verlassen.

overmoon
"Habe Mut, dich deines eigenen Verstandes zu bedienen." (Immanuel Kant)
  Mit Zitat antworten Zitat