Autor Beitrag
D. Annies
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Mo 18.01.10 08:46 
Hi, Delpher,

bei dem folgenden Code "steht" der Rechner:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
  n := 0;  
  SetLength(p,n+1);    // SetLength(p,10) geht bestens!
  assignfile(t1, label38.caption + 'pw.txt'); reset(t1);
  while not eof(t1) do 
  begin 
    readln(t1, p[n]); 
    inc(n); 
    SetLength(p,n);             // bei Setlength(p,10) weglassen
  end;
  closefile(t1);


Wenn ich den //-Code nehme, gehtes bestens, aber ich will ja das Array flexibel haben.
Wer hat eine Idee?

Gruß, Detlef

_________________
ut vires desint, tamen est laudanda voluntas
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Mo 18.01.10 09:03 
Hab den Fehler, Ich hatte eine Zeile später bei k = 1 abgefragt, scusi!
Det

_________________
ut vires desint, tamen est laudanda voluntas
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19326
Erhaltene Danke: 1749

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 18.01.10 09:14 
Einen Tipp habe ich aber noch:
Wenn du das reset in der Zeile am Ende versteckst wie hier und dann den Code später einmal kopierst und umschreibst, dann fällt dir das vielleicht gar nicht auf. Und dann wunderst du dich wo der Fehler liegt, weil du nur jeweils den Zeilenanfang durchgehst und das reset übersiehst.
Deshalb sollte man wirklich immer nur einen Befehl in eine Zeile schreiben.

Zur Komponentenbezeichnung muss ich ja nix mehr sagen, das weißt du ja eigentlich selbst (label38...). :mrgreen:
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Mo 18.01.10 11:08 
Hi, Sebastian, :oops:

ich nenne label38 jetzt um in lHomeverzeichnis. Wäre das in deinem Sinne (hast ja recht) ok?

Danke, Detlef

_________________
ut vires desint, tamen est laudanda voluntas
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19326
Erhaltene Danke: 1749

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 18.01.10 11:30 
Wie du es nennst ist ja deine Sache. Ich nenne visuelle Komponenten immer mit lbl, btn usw. am Anfang um es mir bequemer zu machen (lbl eingeben und ich sehe alle Labels usw.), andere finden das nicht gut.

Hauptsache ist ja nur, dass du sie dem Zweck entsprechend irgendwie benennst, damit du (und ggf. andere Programmierer) auch siehst welche Komponente du eigentlich da ansprichst bzw. gerade brauchst (ohne immer aufs Formular umzuschalten). ;-)
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Mo 18.01.10 12:21 
Hi, Sebastian,
ja, du hast recht l_ ist wohl zu kurz. Lbl ist "sprechender"
Danke, Detlef

P.S. Ich kann nicht in mehreren Dateien gleichzeitig suchen und ersetzen, oder?

_________________
ut vires desint, tamen est laudanda voluntas
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19326
Erhaltene Danke: 1749

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 18.01.10 13:32 
user profile iconD. Annies hat folgendes geschrieben Zum zitierten Posting springen:
P.S. Ich kann nicht in mehreren Dateien gleichzeitig suchen und ersetzen, oder?
Parallel ist das ja kaum sinnvoll, denn die Festplatte hat nun einmal nur einen Lesekopf. ;-)
Deshalb ist nacheinander schon gut.
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Mo 18.01.10 16:05 
Hi, Seb,

und ich hatte noch überlegt, ob ich gleichzeitig als "gleichzeitig" schreibe ...
(Aber dann hätte ich ja nicht einen :wink: bekommen. Nein, das ist mir schon klar, was ich meinte, ich kann ja nach einem Wort (äh: String) in mehreren Dateien (den .pas Dateien des Projekts) suchen lassen, aber wohl doch nicht Suchen und Ersetzen - oder?

Gruß, Det

_________________
ut vires desint, tamen est laudanda voluntas
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19326
Erhaltene Danke: 1749

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 18.01.10 17:12 
Ach so, in Delphi. :D

Dafür gibt es ja Refactoring, das ersetzt automatisch alle Vorkommen im Projekt. Einfach rechte Maustaste auf den Bezeichner, ob Variable oder Methode usw., dann Refactoring und umbenennen. Ggf. Vorschau ansehen und anwenden, fertig.
(Geht natürlich wie die meisten solchen Sachen erst ab Delphi 2005.)
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Mo 18.01.10 19:46 
Na, denn

_________________
ut vires desint, tamen est laudanda voluntas