![]() |
ja musste auch grad feststellen, das er immer nur die erste zeile läd, ich denke speichern tut er sie alle, wenn ich mir den quelltext so anschaue, nu gut, muss dann mal ins bett!
danke nochmals und das er alle zeilen läd bekomm ich hoffenltich irgendwie hin ;) ciao |
Hi Haegar,
bin eben auf die entsprechenden Routinen gestoßen, die dir geziehlt weiterhelfen. Schau mal unter ![]() Dort gibt es eine Prozedur zum Speicher in ein File und zum Laden aus dieser Datei. Hacki |
Das sit der gleiche Weg wie der von FuckRacism, nur jetzt mit der Größe der StringGrid noch dabei, also jetzt empfehlenswert!
|
alles klar, bin grad inner schule, aber wenn ich mal zeit hab werd ich das dann mal probiere, wenn das dann auch geht, is mein programm feddich ;))
danke nochmal is echt spitze das forum |
ok habs mit ner eigenen zusammengebastelten version gemacht
Delphi-Quellcode:
procedure Tfrm_haupt.Speichern1Click(Sender: TObject);
var row:byte; hilfliste:TStringlist; begin hilfliste:=TStringlist.Create; try begin for row:=1 to strgrid1.RowCount-1 do begin hilfliste.Add(strgrid1.Rows[row].CommaText); hilfliste.SaveToFile(filename); end; end; finally hilfliste.Destroy; end; end; procedure Tfrm_haupt.Laden1Click(Sender: TObject); var hilfliste :TStringlist; row, extraabstand, i :byte; begin hilfliste:=TStringlist.Create; try begin hilfliste.LoadFromFile(filename); strgrid1.RowCount:=hilfliste.Count+1; if strgrid1.RowCount>=11 then frm_haupt.Height:=frm_haupt.height+((strgrid1.RowCount-10)*strgrid1.DefaultRowHeight); strgrid1.Height:=strgrid1.RowCount*strgrid1.DefaultRowHeight+(3+strgrid1.RowCount*1); if strgrid1.RowCount>2 then begin for i:=2 to strgrid1.RowCount-1 do begin extraabstand:=i-1; RadioButton[i]:=TRadioButton.Create(frm_haupt); RadioButton[i].parent:=self; RadioButton[i].Left:=384; RadioButton[i].width:=15; RadioButton[i].Top:=65+((i-1)*16)+extraabstand; RadioButton[i].Name:='RadioButton'+IntToStr(i); end; end; for row:=1 to strgrid1.rowcount-1 do strgrid1.Rows[row].CommaText:=hilfliste[row-1]; end; finally hilfliste.Destroy; end; end; |
Moin Haegar,
das mit dem Destroy ist gut gedacht, und dürfte hier auch keine Probleme machen. Sicherer allerdings wäre es die Methode Free aufzurufen, oder, da Du ja ein D6 Version hast, die Prozedur FreeAndNil(...). |
alles klar, ich werds versuchen, da ja das grundlegende nu funktioniert, kann ich mich an sachen wie Speicherpfadwahl machen und so, is ja bisher festgelegt! und vielleicht noch was zu sortieren, und vielleicht noch was suchen lassen, aber die liste wird ja erstmal net so gross, so das man darauf noch verzichten kann.
kann man auch solche simplen programme veröffentlichen, oder is das mehr für schwierigere sachen gedacht. wenn nicht, dann würd ich das bei gelegenheit mal reinstellen wollen. mal sehen. ciao bis zum nächsten problem ;) Haegar |
Hallo Haegar,
Zitat:
:wink: |
Du solltest beim Speichern wohl das hilfliste.SaveToFile(filename); aus der Schleife nehmen und anschließend verwenden! Außerdem würde ich den Code vom Link von FuckRacism nehmen, da da auch die StringGird- Spalten- und Zeilenanzahl berücksichtigt wird!
|
wie meinste das mit berücksichtigt? is doch alles drin (spaltenzahl=konstant bei 3), und zeilenanzahl is doch mit strgrid1.rowcount in abhängigkeit gestellt worden.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:44 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