Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Problem mit StringGrid Füllen, komme nicht weiter (https://www.delphipraxis.net/152093-problem-mit-stringgrid-fuellen-komme-nicht-weiter.html)

AlexII 10. Jun 2010 21:40

Problem mit StringGrid Füllen, komme nicht weiter
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

ich will ein StringGrid füllen, es klappt auch soweit, aber wenn ich die Anwendung schließe stürzt sie ab (siehe Screenshot), weiß nicht mehr weiter. :cry:

Hab wie folgt eingestellt:
RowCount=1
FixCols=0

Hier der Code:
Delphi-Quellcode:
i:=Form1.StringGrid1.RowCount-1; //<- wenn ich die 1 weglasse stürzt das Prog nicht ab, aber dann wird die SringGrid falsch gefüllt, erste Zeile bleibt leer.

senderindex[i].name:=LabeledEdit1.Text;
senderindex[i].vorname:=LabeledEdit2.Text;

Form1.StringGrid1.RowCount:=Form1.StringGrid1.RowCount+1;

Form1.StringGrid1.Cells[0,i] := senderindex[i].name;
Form1.StringGrid1.Cells[1,i] := senderindex[i].vorname;
Danke für die Hilfe!

Klaus01 10. Jun 2010 21:51

AW: Problem mit StringGrid Füllen, komme nicht weiter
 
Hallo AlexII,

wie schaut denn die Form1.Close Routine aus?
Gibst Du eventuell Sachen frei die es nicht mehr gibt?

Grüße
Klaus

AlexII 10. Jun 2010 21:53

AW: Problem mit StringGrid Füllen, komme nicht weiter
 
Ne es liegt nicht daran, denn wenn ich anstatt

Code:
i:=Form1.StringGrid1.RowCount-1;
das hier eingebe

Code:
i:=Form1.StringGrid1.RowCount;
Klappt das Schließen wunderbar!

Hat dann vllt jemand eine Idee wie ich die Daten anders füllen kann?

Luckie 11. Jun 2010 01:08

AW: Problem mit StringGrid Füllen, komme nicht weiter
 
Die Zeile
Delphi-Quellcode:
i:=Form1.StringGrid1.RowCount-1;
hat wahrscheinlich nur indirekt mit dem Programmabsturz beim Schließen zu tun. Wahrscheinlich überschreibst du dir irgendwo den Speicher und dann kracht es am Ende.

idefix2 11. Jun 2010 07:13

AW: Problem mit StringGrid Füllen, komme nicht weiter
 
Anhand des Codeausschnitts, den Du gepostet hast, kann man nicht viel sagen, der eigentliche Fehler liegt jedenfalls irgendwo anders im Programm - zumindest ist er hier ohne zusätzlichen Kontext nicht zu erkennen.

DeddyH 11. Jun 2010 09:54

AW: Problem mit StringGrid Füllen, komme nicht weiter
 
Ist denn senderindex auch ausreichend dimensioniert?

hoika 11. Jun 2010 10:11

AW: Problem mit StringGrid Füllen, komme nicht weiter
 
Hallo,

was ist senderindex überhaupt.

Ich hoffe, kein dynamisches Array ;)


Heiko

AlexII 11. Jun 2010 11:31

AW: Problem mit StringGrid Füllen, komme nicht weiter
 
Zitat:

Zitat von hoika (Beitrag 1028028)
was ist senderindex überhaupt.
Ich hoffe, kein dynamisches Array ;)

Ja das ist ein array, aber ich hab das jetzt anders gemacht und es klappt ohne Absturz.

Delphi-Quellcode:
      begin
      Cells[0, RowCount-1]:=LabeledEdit1.Text;
      Cells[1, RowCount-1]:=LabeledEdit2.Text;
      Cells[2, RowCount-1]:=LabeledEdit3.Text;
      Cells[3, RowCount-1]:=LabeledEdit4.Text;

      RowCount:=RowCount+1;
     end;

David Martens 14. Jun 2010 18:12

AW: Problem mit StringGrid Füllen, komme nicht weiter
 
Zitat:

Zitat von AlexII (Beitrag 1028059)

Delphi-Quellcode:
      begin
      Cells[0, RowCount-1]:=LabeledEdit1.Text;
      Cells[1, RowCount-1]:=LabeledEdit2.Text;
      Cells[2, RowCount-1]:=LabeledEdit3.Text;
      Cells[3, RowCount-1]:=LabeledEdit4.Text;

      RowCount:=RowCount+1;
     end;

Mit dem Code produzierst du aber immer eine Leerzeile am Ende, oder?
Du solltest erst den RowCount hochsetzten und dann die Werte eintragen:

Delphi-Quellcode:
    begin
      RowCount := RowCount + 1; // erst Platz schaffen für neue Daten

      // dann neue Daten eintragen
      Cells[0, RowCount - 1] := LabeledEdit1.Text;
      Cells[1, RowCount - 1] := LabeledEdit2.Text;
      Cells[2, RowCount - 1] := LabeledEdit3.Text;
      Cells[3, RowCount - 1] := LabeledEdit4.Text;    
     end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 11: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 by Thomas Breitkreuz