AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Random Text Ausgabe

Ein Thema von mOzZzI · begonnen am 22. Jul 2006 · letzter Beitrag vom 22. Jul 2006
Antwort Antwort
Benutzerbild von mOzZzI
mOzZzI

Registriert seit: 11. Nov 2005
Ort: Bamberg
320 Beiträge
 
Delphi 2006 Professional
 
#1

Random Text Ausgabe

  Alt 22. Jul 2006, 19:44
Hi Freunde,
ich hab eine Frage an euch,
es ist so ich habe eine Textdatei, und in dieser Textdatei sind ungefähr 30 Zeilen mit Text.
Jetzt möchte ich jedes mal am Programmstart einen Zufallssatz in einem Label anzeigen...
Wie funktioniert sowas?
--Mfg mozZzI--------------
Get & Test my ToolBar (550 KB)
Thread & Comments Here
------------------------------
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: Random Text Ausgabe

  Alt 22. Jul 2006, 19:47
Du lädst deine Datei in eine Delphi-Referenz durchsuchenStringList, erzeugst dir ne Zahl zwischen von 0 bis ausschließlich der Anzahl der Strings in der Liste und schreibst den String mit dem Index in den Label. Danach gibst du die Liste wieder frei, und du hast nen zufälligen Text.
  Mit Zitat antworten Zitat
Benutzerbild von mOzZzI
mOzZzI

Registriert seit: 11. Nov 2005
Ort: Bamberg
320 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Random Text Ausgabe

  Alt 22. Jul 2006, 19:50
Zitat von Dax:
Du lädst deine Datei in eine Delphi-Referenz durchsuchenStringList, erzeugst dir ne Zahl zwischen von 0 bis ausschließlich der Anzahl der Strings in der Liste und schreibst den String mit dem Index in den Label. Danach gibst du die Liste wieder frei, und du hast nen zufälligen Text.
hättest du vill ein kleines code-beispiel (hab noch nicht so viel mit Stringlist gearbeitet)
--Mfg mozZzI--------------
Get & Test my ToolBar (550 KB)
Thread & Comments Here
------------------------------
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#4

Re: Random Text Ausgabe

  Alt 22. Jul 2006, 19:52
Delphi-Quellcode:
var list: TStrings

list := TStringList.Create;
list.LoadFromFile(deineDatei);

Randomize;
Label1.Caption := list[Random(list.Count)];

list.Free;
  Mit Zitat antworten Zitat
Benutzerbild von mOzZzI
mOzZzI

Registriert seit: 11. Nov 2005
Ort: Bamberg
320 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Random Text Ausgabe

  Alt 22. Jul 2006, 19:53
Zitat von Dax:
Delphi-Quellcode:
var list: TStrings

list := TStringList.Create;
list.LoadFromFile(deineDatei);

Randomize;
Label1.Caption := list[Random(list.Count)];

list.Free;
öhm, müsste das nicht

var list: TStringlist; heisen?
--Mfg mozZzI--------------
Get & Test my ToolBar (550 KB)
Thread & Comments Here
------------------------------
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Random Text Ausgabe

  Alt 22. Jul 2006, 19:54
Mit stringList.LoadFromFile kannst du den Inhalt einer datei in die Stringliste laden. Mit StringList.Items[x-1] bekommst du den x. Eintrag.

Edit: zu langsam}
öhm, müsste das nicht

var list: TStringlist;

heisen?

Nein, da TStringList ein Nachfahre von TStrings ist.
Markus Kinzler
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#7

Re: Random Text Ausgabe

  Alt 22. Jul 2006, 19:55
Oh.. Nun ja, eigentlich ists egal, da TStrings ne abstrakte Basisklasse ist und TStringList lediglich die abstrakten Methoden implementiert.. Lang: Nein, kurz: Ja

@mkinzler: .Items ist aber ne Array-Property, und nicht die Stringliste [edit]Und x-1 ist der x-2te Eintrag *glaub*[/edit]
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Random Text Ausgabe

  Alt 22. Jul 2006, 19:58
Zitat:
@mkinzler: .Items ist aber ne Array-Property, und nicht die Stringliste Wink
Stimmt, einfach wieder mal schneller getippt als gedacht.
Zitat:
[edit]Und x-1 ist der x-2te Eintrag *glaub*[/edit]
Der Index beginnt mit 0.
Markus Kinzler
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#9

Re: Random Text Ausgabe

  Alt 22. Jul 2006, 19:59
Zitat von mkinzler:
Stimmt, einfach wieder mal schneller getippt als gedacht.
Dito

bäh, böse schreibfehler
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:28 Uhr.
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