Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi String Grid (https://www.delphipraxis.net/13152-string-grid.html)

Moyyer 11. Dez 2003 21:59


String Grid
 
Hallo Alle Zusammen

Ich hab ein String Grid mit mehreren Zeilen. Nun aber will ich eine Zeile in der Mitte löschen. Wie könnte ich das machen? Eine vordefinierte Prozedur gibt es so weit wie ich gesehen habe nicht.
Aber hab auch keine andere Idee wie ich es machen könnte.
Habt ihr eine? :pale:

MfG Moyyer

himitsu 11. Dez 2003 23:23

Re: String Grid
 
Ein Hallöle von http://www.FrankNStein.de/Smiley-Wolke.gif,

es ist ganz einfach. Es müssen doch nur die Zeilen unterhalb der zu löschenden Zeile um 1 nach oben verschoben werden und danach die Zeilenanzahl um ein veringert werden.
Delphi-Quellcode:
Var R, C: Integer;
  Zeile: Integer; {zu löschende Zeile}

For R := Zeile to StringGrid1.RowCount - 2 do
  For C := 0 to StringGrid1.ColCount - 1 do
    StringGrid1.Cells[C, R] := StringGrid1.Cells[C, R + 1];
StringGrid1.RowCount := StringGrid1.RowCount - 1;
http://www.delphipraxis.net/images/common/divider.jpg
http://www.FrankNStein.de/Smiley-Kuss.gif * * http://www.FrankNStein.de/Smiley-Spinne.gif * * * http://www.FrankNStein.de/Smiley-Winken.gif

Jens Schumann 12. Dez 2003 07:54

Re: String Grid
 
Hallo,
ich in meiner Codekiste folgendes gefunden:
Delphi-Quellcode:
procedure DeleteRow(yourStringGrid: TStringGrid; ARow: Integer);
var i: Integer;
begin
  with yourStringGrid do
  begin
    for i := ARow to RowCount-2 do
      Rows[i].Assign(Rows[i+1]);
    RowCount := RowCount - 1
  end;
end;
Der Unterschied zu himitsu's Vorschlag ist: Dadurch, dass hier die Assign Methode der Row's verwendet wird, werden auch evt. in der Objects Eigenschaft enthaltene Objektzeiger mit genommen.
Könnte unter Umständen ziemlich wichtig sein.

Moyyer 12. Dez 2003 10:26

Re: String Grid
 
Jo Danke erstmal. Kann es aber erst heute abend testen.

P.S. Sieht aber gut aus
MfG Moyyer


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:10 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz