![]() |
Probleme mit Stringlist
Ich hab ein Problem mit meinen Programm
Und zwar kann ich immer dne BItbutton betätigen bis auf wenn ich vorher den Open oder SaveDialog ausgeführt habe... Als ob nach der Dialogsache die Namen der beiden Daten durch den OpenDialog1.FileName ersetzt wird.. Obwohl beides nichts miteinander zu tun hat... BitButton
Delphi-Quellcode:
procedure TForm2.BitBtn1Click(Sender: TObject);
var E, E2: TStringList; i, ID:Integer; begin E:=TStringList.Create; //Datei 1 E.LoadFromFile('.\list1.txt'); E2:=TStringList.Create; //Datei 2 E2.LoadFromFile('.\list2.txt'); E.AddStrings(E2); //Zusammenführen E2.Free; //Datei 2 kann weg for i:=1 to 24 do //für 24 Edits begin ID:=Random(E.Count); //Index raussuchen if E.Count=0 then Break; TEdit(FindComponent('Edit'+IntToStr(i))).Text:=E[ID]; //Text in Edit E.Delete(ID); //Text auf SL löschen end; E.Free; end; OpenDialog
Delphi-Quellcode:
procedure TForm2.dxBarButton4Click(Sender: TObject);
var MyList: TStringList; i: Integer; begin MyList := TStringList.Create; if OpenDialog1.Execute then begin MyList.LoadFromFile(OpenDialog1.FileName); end; for i := 1 to 26 do TEdit(FindComponent('Edit' + IntToStr(i))).Text := MyList[i - 1]; // -1, da der Index in der Stringlist mit 0 beginnt // MyList[...] entspricht MyList.Strings[...] MyList.Free; end; |
Re: Probleme mit Stringlist
Wäre nicht uninteressant zu wissen wieviel Strings in list1.txt, list2.txt und in der im Opendialog geladenen Datei drinstehen !
|
Re: Probleme mit Stringlist
In den DAtein List 1 und list 2 unterschiedlich max wenn beide zusammengenommen werden max. 24 stück...
min. 0 max 24. Zur Zeit aber weniger so 8 und in die gespeicherte datei bzw. in die geöffnete sind es 26 strings |
Re: Probleme mit Stringlist
Hast Du 26 oder 24 Editfelder ?
|
Re: Probleme mit Stringlist
AFAIR können relative Pfade in Verbindung mit dem OpenDialog Probleme machen. Ersetz mal die relativen Pfade (.\) durch absolute (ExtractFilePath(ParamStr(0) glaub ich) .
|
Re: Probleme mit Stringlist
genau. Der Opendialog hätte alternativ auch die Option ofnochangedir. Die musst du im OI auf True stellen.
|
Re: Probleme mit Stringlist
Zitat:
oder ExtractFilePath(Application.exename) Aber das mit ofnochangedir (was auch klappen müsste) wusst ich auch noch ned. :gruebel: man sollte sich seine werkzeuge besser angugn :oops: |
Re: Probleme mit Stringlist
paramstr(0) ist dierekter ;) ungefähr 0.0002 ms schneller als application.exename :mrgreen:. Application.exename wird aus paramstr(0) abgeleitet, wenn die application-variable initialisiert wird. Paramstr ist dierekt in der windows-unit deklariert und kann somit auch in nonVCL-Programmen verwendet werden.
|
Re: Probleme mit Stringlist
Okay ich hab mich nun beriseln lassen und wie soll ich es machen?
|
Re: Probleme mit Stringlist
Auf jedenfall nicht über die Optionen des OpenDialoges, sondern absolute Pfade verwenden, wie es auch schon geraten wurde.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 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