Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi StringGrid Hilfe (https://www.delphipraxis.net/94284-stringgrid-hilfe.html)

Chaismo 19. Jun 2007 10:44


StringGrid Hilfe
 
Hallöchen an Alle!
also ich möchte gern eine Programm schreiben und dafür müsste ich in eine (ich dachte da an eine StringGrid) Datein in EditKomponenten einfügen. Wenn ich danna uf OK klicke sollen die Informationen dann in diese StringGrid eingefügt werden.
Nätürlich sollte es aber auch möglich sein wieder Daten zu löschen.
Kann mir ejmand sgane wie ich das am besten mache?
Schonmal Dnake im Voraus!

hoika 19. Jun 2007 11:10

Re: StringGrid Hilfe
 
Hallo,

Grid.ColCount
Grid.RowCount
Grid.Cells[Col,Row]

bei den 3 obigen ist sowohl Lese- wie auch Schreibzugriff möglich

Zum Löschen einer Zeile einfach mal hier suchen.


Heiko

Chaismo 19. Jun 2007 11:16

Re: StringGrid Hilfe
 
Ja das habe ich schon probiert nur hat er dann bei mir die Zeilen zwar hinzugefügt nur nicht angezeigt und erst nach 2 oder 3 Eingaben später wurden die ersten dann sichtbar, und das in Zeile 3 oder 4... :gruebel:

DeddyH 19. Jun 2007 12:08

Re: StringGrid Hilfe
 
Etwas Quellcode wäre hilfreich, meine Glaskugel ist gerade zum Polieren. :mrgreen:

Chaismo 19. Jun 2007 12:43

Re: StringGrid Hilfe
 
naja ich habs erstmal ganz Simpel gehalten zum Probieren...
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
StringGrid1.RowCount:=StringGrid1.RowCount+1;
StringGrid1.Cells[0,StringGrid1.RowCount]:=Fach.Text;
StringGrid1.Cells[1,StringGrid1.RowCount]:=IntToStr(Punkt);
end;
nur wirden diese dann nicht angezeigt sondern tauchen erst nach 2-3 mal klicken auf?! :gruebel:
Und wenn ich dann das ganze um 2 vermindere also so...
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
StringGrid1.RowCount:=StringGrid1.RowCount+1;
StringGrid1.Cells[0,StringGrid1.RowCount-2]:=Fach.Text;
StringGrid1.Cells[1,StringGrid1.RowCount-2]:=IntToStr(Punkt);
end;
dann klappt alles?! Ich würd gern mal wissen wieso das so ist?! :pale: :wall:

ibp 19. Jun 2007 12:52

Re: StringGrid Hilfe
 
zur info: die zeilen zählen von (0..rowcount-1)

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var lastrow:integer;
begin
  lastrow:=StringGrid1.RowCount;
 
  StringGrid1.RowCount:=lastrow+1; // hier um eine zeile erweitern

  StringGrid1.Cells[0,lastrow]:=Fach.Text;
  StringGrid1.Cells[1,lastrow]:=IntToStr(Punkt);
end;

oldmax 19. Jun 2007 12:56

Re: StringGrid Hilfe
 
Hi
Nun, um ein wenig zu üben, solltest du folgendes machen:
1. Wissen, welche Eigenschaften und Methoden gebraucht werden und wie man sie benutzt. Dazu ist die Delphi-Hilfe schon ganz gut geeignet.
Text in eine Zeile bringen geht so:
Delphi-Quellcode:
Stringgrid1.Cells[1,4]:='Test';
Da das Gitter in Cols und Rows (Spalten und Zeilen) eingeteilt ist, muß auch das Feld mit 2 Werten bezeichnet werden, eben wie ein Zweidimensionales Array.
Einen Wert aus dem Grid holen gaht dementsprechend genau andersrum:
Delphi-Quellcode:
DerInhalt:=StringGrid1.Cells[1,4];
Um einen Wert aus einer Zelle zu löschen, schreibst du einen Leerstring hinein. Um eine Zeile zu löschen, entweder
Delphi-Quellcode:
Stringgrid.RowCount:=Stringgrid.RowCount-1;
oder um eine Zeile dranzuhängen, klar doch,
Delphi-Quellcode:
Stringgrid1.RowCount:=Stringgrid1.RowCount+1;
Um zu erfahren, wieviele Zeilen dein Gitter nun hat ist
Delphi-Quellcode:
Zeilen:=Stringgrid.RowCount;
und für die Spalten eben
Delphi-Quellcode:
Spalten:=Stringgrid.ColCount;
notwendig. Na ja, und wenn deine Fenstergröße zu klein ist, siehst du eben nicht alle Zeilen oder Spalten. Dann mußt du dir die Scrollbars halt zuschalten.
Gruß oldmax


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:20 Uhr.

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