![]() |
StringGrid neue Zeile oben einfügen
hallo,
möchte immer die aktuellen Zeilen oben haben! wie löse ich dieses Problem?
Delphi-Quellcode:
var
i: Integer; begin i := StringGrid1.RowCount; StringGrid1.RowCount := i +1; StringGrid1.Cells[1, i] := IntToStr(zaehler); inc(zaehler); StringGrid1.Cells [2, i] := FormatDateTime ('dd:mm:yyyy', Now); StringGrid1.Cells [3, i] := FormatDateTime ('hh:nn:ss', Now); StringGrid1.Cells [4, i] := ('Log * '+ Edit6.Text +' * User ID * '+ Edit3.Text); end; |
AW: StringGrid neue Zeile oben einfügen
Zitat:
|
AW: StringGrid neue Zeile oben einfügen
Mit i+1 wird eine Zeile hinzugefügt, aber quasi nur am Ende.
Also ja, jetzt muß man nur noch alle bestehenden Inhalte um je eine Zeile nach unten kopieren (natürlich von unten nach oben, um nichts zu überschreiben). Au0er es gäbe zufällig einen Insert-Befehl, welcher das Umkopieren für einen übernimmt. |
AW: StringGrid neue Zeile oben einfügen
Da ein StringGrid afaik oben bei 0 anfängt und unten bei count-1 aufhört musst du, wenn du oben etwas einfügen willst zunächst RowCount um 1 erhöhen, dann alle Zeilen von Count-2 bis 0 um eins nach unten verschieben und dann erst in der Zeile 0 das neue einfügen.
|
AW: StringGrid neue Zeile oben einfügen
Mein Freund Google spuckt gewaltig viel zu diesem Thema aus, z.B.:
![]() |
AW: StringGrid neue Zeile oben einfügen
Sobald man mit der Unsitte (ich persönlich halte es für Unfug) die Controls zur Datenspeicherung zu nutzen aufhört, ist das Problem kein Problem mehr.
Dann hat man nur noch eine Präsentations-Methode für eine Liste und ein StringGrid. Nach jeder Änderung an der Liste ruft man die Präsentations-Methode auf und schon ist es wie gewünscht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:21 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