Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Memo Nummerierung (https://www.delphipraxis.net/175677-memo-nummerierung.html)

Foxi1896 9. Jul 2013 10:42

Memo Nummerierung
 
Hey, kleine Frage.
Möchte immer wenn ich auf MenuItem4Click klicke neue Zeile dazufügen mit Laufender Nummerieung.

[DP]procedure TForm1.MenuItem4Click(Sender: TObject);

var i : Integer;

begin

Memo1.Lines.Add(
IntToStr(i+1) + chr(9) + Edit9.Text + chr(9) + Edit10.Text
+ chr(9) + chr(9) + Edit12.Text ) ;

end; [/DP]

DeddyH 9. Jul 2013 10:44

AW: Memo Nummerierung
 
Das wird mit einer lokalen Variablen aber nichts werden, da diese nach Abarbeitung der Methode ungültig ist. Du kannst nun entweder eine globale Variable oder ein privates Feld nehmen oder evtl. einfach auf die Zeilenanzahl des Memos zugreifen, das bleibt Dir überlassen.

p80286 9. Jul 2013 10:54

AW: Memo Nummerierung
 
Da i nicht initialisiert ist geht das wohl nicht, also was genau willst Du erreichen, worauf bezieht sich die Zeilennummer?
z.B. könnte es so gehen:

Delphi-Quellcode:
i:=Memo1.lines.count-1;
Memo1.Lines.Add(IntToStr(i+1) + chr(9) + Edit9.Text + chr(9) + Edit10.Text
                              + chr(9) + chr(9) + Edit12.Text ) ;
Gruß
K-H

Foxi1896 9. Jul 2013 11:03

AW: Memo Nummerierung
 
Ah so ähnlich hatte ich es auch schon mal.
Ein Fehler ist da jetzt noch ... Habe am Anfang überschrieften und Infos drinen ... und so fängt die Nummerierung bei 10 an. (könnte zwar -10 hinschreiben aber das wäre nicht so schön bei Änderungen)


@DeddyH:
globale Variable: inwiefern muss ich das machen?
privates Feld : ka wie das geht.
die Zeilenanzahl des Memos zugreifen: Ist ja jetzt bei dem vom p80286 der Fall. Nur halt das es jetzt bei 1 beginnen soll.

p80286 9. Jul 2013 11:07

AW: Memo Nummerierung
 
Unter umständen erkennt man (das Programm) wo die eigentlichen Daten beginnen, dann nimmst Diese Zeilennummer und ziehst sie von
Delphi-Quellcode:
.Count
ab?

Gruß
K-H

Foxi1896 9. Jul 2013 11:11

AW: Memo Nummerierung
 
so hab ich es jetzt gemacht ... aber geht es das er das von selber macht? bzw immer von 1 Anfängt? Und nicht nach der Zeile geht in der er sich befindet?

p80286 9. Jul 2013 11:18

AW: Memo Nummerierung
 
Zitat:

Zitat von Foxi1896 (Beitrag 1221213)
so hab ich es jetzt gemacht ... aber geht es das er das von selber macht? bzw immer von 1 Anfängt? Und nicht nach der Zeile geht in der er sich befindet?

Das verstehe ich nicht! könntest Du das vielleicht noch einmal erklären?
Gruß
K-H

Foxi1896 9. Jul 2013 11:22

AW: Memo Nummerierung
 
Delphi-Quellcode:
i:=Memo1.lines.count-11; //Hier jetzt Manuel 11 reingeschrieben
Memo1.Lines.Add(IntToStr(i+1) + chr(9) + Edit9.Text + chr(9) + Edit10.Text
                              + chr(9) + chr(9) + Edit12.Text ) ;
Aber geht das auch so das er selber weiß ab welcher Zeile es Anfängt.

p80286 9. Jul 2013 11:27

AW: Memo Nummerierung
 
Angenommen in Deinem Memo steht folgendes:

Überschrift 1
jetzt kommt
ganz viel Text
bis derr Speicher überläuft
und nun folgen Daten
:::
1)daten
2)daten


dann könntest Du folgendes machen:
Delphi-Quellcode:
....
i:=-1;
repeat inc(i,1) until i>Memo1.Lines.count-1 or pos(':::',Memo1.Lines[i])>0;
...
So als Idee....

Gruß
K-H

Foxi1896 9. Jul 2013 11:33

AW: Memo Nummerierung
 
Ja, genau das meine ich nur das er mir jetzt den Fehler schreibt: "boolean" expected "longint"


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:50 Uhr.
Seite 1 von 3  1 23      

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