Autor Beitrag
Waldkauz
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 102



BeitragVerfasst: Do 07.05.09 18:45 
Hallo!

Ich hab ein kleines Spiel programmiert, und ich möchte als kleine Zusatzfunktion eine Art Highscore-Funktion machen.
Ich hab mir das so überlegt: Also wenn die erhaltenen Punkte (werden in einem Editfeld ausgegeben) höher sind, als der Inhalt des .txt-Dokuments "Punkte", dann wird man idealerweise eine Art prompt-Funktion (wie nennt sich die in Delphi?) oder wenn das zu kompliziert ist, über ein erscheinendes Editfeld aufgefordert, seinen Namen einzugeben und der Name wird samt Punktezahl im Textdokument gespeichert...
Ich wüsste allerdings nicht, wie ich das anstellen soll, dass der Inhalt des Editfeldes gespeichert wird...
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19313
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 07.05.09 19:37 
Wie wäre es mit TStringList oder AssignFile, Reset/Rewrite, ReadLn/WriteLn, CloseFile?

Oder schau doch einfach einmal in die FAQ, da gibt es einige Einträge wie diesen:
www.delphi-library.d...ewtopic.php?p=126424
ffgorcky
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 573

WIN XP/2000 & 7Prof (Familie:Win95,Win98)

BeitragVerfasst: Do 07.05.09 19:52 
Die PromptFunktion ist doch einfach nur
ausblenden Delphi-Quelltext
1:
MessageBox('und hier der anzuzeigene Text',MBOK);					

Damit gibst Du eine Meldung aus, die nur einen OK-Button hat.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19313
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 07.05.09 19:54 
Da kannst du aber keinen Text eingeben... :gruebel: ;-)

Dafür gibt es InputBox oder InputQuery.
ffgorcky
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 573

WIN XP/2000 & 7Prof (Familie:Win95,Win98)

BeitragVerfasst: Do 07.05.09 20:00 
Sprich eine InputBox in dieser Art:
ausblenden Delphi-Quelltext
1:
Name:=InputBox('Name?','Bitte geben Sie hier Ihren Namen ein!'+#13#10+'Danke!','');					
Waldkauz Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 102



BeitragVerfasst: Do 07.05.09 20:12 
user profile iconffgorcky hat folgendes geschrieben Zum zitierten Posting springen:
Sprich eine InputBox in dieser Art:
ausblenden Delphi-Quelltext
1:
Name:=InputBox('Name?','Bitte geben Sie hier Ihren Namen ein!'+#13#10+'Danke!','');					


und kann man auch die Eingabe der InputBox irgendwo abspeichern?
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19313
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 07.05.09 20:27 
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Wie wäre es mit TStringList oder AssignFile, Reset/Rewrite, ReadLn/WriteLn, CloseFile?
ffgorcky
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 573

WIN XP/2000 & 7Prof (Familie:Win95,Win98)

BeitragVerfasst: Do 07.05.09 20:28 
Du meinst jetzt so in etwa?:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
MemoGewinnerListe.Lines.LoadFromFile('Gewinnerliste.beliebigeEndung');
while Name='' do
    Name:=InputBox('Name?','Bitte geben Sie hier Ihren Namen ein!'+#13#10+'Danke!','');
memo1.lines.add(Name+'   '+Gewinnsumme);
MemoGewinnerListe.Lines.SaveToFile('Gewinnerliste.beliebigeEndung');

Wobei Du die while-Zeile auch weglassen kannst.

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

Wobei Du auch VK_TAB statt der Leerzeichen nutzen kannst,
also so:
Name+VK_TAB+Gewinnsumme

PS: Ich habe eben noch mal meinen Eintag davor abgeändert, weil das ja dann so ( mit dem Add(Zeile) ) wohl die sauberere Methode sein soll.


Zuletzt bearbeitet von ffgorcky am Do 07.05.09 20:58, insgesamt 1-mal bearbeitet
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19313
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 07.05.09 21:00 
Wenn du jetzt noch das Memo weglässt und durch eine TStringList ersetzt, dann wäre die Lösung schon recht gut...
Ein Memo ist ausschließlich zur Anzeige und nicht als Hilfsmittel zur Datenspeicherung geeignet.
Waldkauz Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 102



BeitragVerfasst: Do 07.05.09 21:40 
ich finde die TStringList (gibts bei der eig. 'nen Scrollbalken?) nicht...
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19313
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 07.05.09 21:51 
Wenn du etwas anzeigen willst, ist das TMemo ja richtig, das hat ja auch nen Scrollbalken, wenn du das einstellst.

Eine TStringList ist eben keine visuelle Komponente, wenn du also nur etwas speichern, aber nicht auf dem Formular anzeigen willst, dann ist die TStringList passender.
Waldkauz Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 102



BeitragVerfasst: Do 07.05.09 22:10 
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Wenn du etwas anzeigen willst, ist das TMemo ja richtig, das hat ja auch nen Scrollbalken, wenn du das einstellst.

Eine TStringList ist eben keine visuelle Komponente, wenn du also nur etwas speichern, aber nicht auf dem Formular anzeigen willst, dann ist die TStringList passender.


Habs mit TMemo schon gehabt, aber da komt kein ScrollBalken...
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19313
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 07.05.09 22:13 
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
ist das TMemo ja richtig, das hat ja auch nen Scrollbalken, wenn du das einstellst.
:roll:
Und rate mal wie die passende Eigenschaft heißt... schau mal im Objektinspektor nach...

Wobei zur Anzeige eine TListBox besser wäre, da diese nicht editierbar ist, ein TMemo muss dafür auf ReadOnly = True stehen.
Waldkauz Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 102



BeitragVerfasst: Do 07.05.09 22:15 
so, jetzt passts.
Danke für eure Hilfe!