Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Inhalt einer Integer Variablen in Label oder Caption anzeige
Thunderbird95 - Di 04.01.11 21:20
Titel: Inhalt einer Integer Variablen in Label oder Caption anzeige
Hallo Forum, bin neu hier und habe eine Frage:
bin ziemlicher Delphi Neuling und von meiner Informatiklehrerin vor eine schwierige Aufgabe gestellt worden.
Ich möchte eine Integer Variable haben, die zusammen mit einem Timer pro Sekunde von 60 bis 0 runter zählt.
Erstellt ist das alles schon. Nun möchte ich diese Variable in der Caption oder einen Label anzeigen (Quasi, dass von 60 bis 0 Sichtbar runtergezählt wird. Wie mach ich das?
Es kann doch nicht sein, das ich für jede Sekude schreiben muss:
Delphi-Quelltext
1: 2:
| if Zeit=60 then Form1.Caption := '60Sekunden'; |
das funktioniert zwar, aber wär ja ein Schreibkrampf das für jede Sekunde bis 0 zu machen...
Danke im Voraus, TB95
Moderiert von
Martok: Topic aus Sonstiges (Delphi) verschoben am Mi 05.01.2011 um 03:13
Moderiert von
Narses: I- durch Delphi-Tags ersetzt
Tankard - Di 04.01.11 21:22
such mal nach dem befehl
Thunderbird95 - Di 04.01.11 21:27
ich geh mal davon aus das du die Integer Variable in eine String Variable umändern willst. leider hab ich überhaupt keine Ahnung von String Variablen...
Namenlosnameless - Di 04.01.11 21:33
strings sind einfach eine Aneinanderreihung von Zeichen!
wenn du mit IntToStr 69 zu einem String machst bekommst du "69" als Text und nicht als Zahl raus!
Labels, benötigen in ihrer Text-Eigenschaft (oder wie auch immer die Eigenschaft in Delphi heißt) immer einen String als Wert.
Tankard - Di 04.01.11 21:34
Delphi-Quelltext
1: 2: 3: 4:
| if Zeit=1 then form1.caption:=IntToStr (Zeit) + ' Sekunde' else form1.caption:=IntToStr (Zeit) + ' Sekunden'; |
elundril - Di 04.01.11 21:36
Caption heißt die Eigenschaft.
Also kannst du zb schreiben label1.caption := 'blabla';. Das blabla ist deine Zeichenkette die du durch die zahl ersetzen willst. Wie du eine Zahl in eine Zeichenkette umwandeln kannst wurde dir ja schon gesagt. Jetzt brauchst du in jedem timerintervall nur noch die zahl um 1 verringern und halt bei 60 anfangen und bei 0 aufhören, indem du bei einem button den timer startest und die zahl auf 60 setzt und wenn der timer bei 0 ist den timer einfach wieder auf enabled:= false; setzt. ;)
lg elundril
der organist - Di 04.01.11 21:48
elundril hat folgendes geschrieben : |
Caption heißt die Eigenschaft.
Also kannst du zb schreiben label1.caption := 'blabla';. Das blabla ist deine Zeichenkette die du durch die zahl ersetzen willst. [..]
lg elundril |
Da du sagstest, dass du total keine Ahnung von Strings hast, ergänze ich kurz mal. Eine Integervariable hat als Inhalt eine Zahl. Eine Stringvariable hat eine Zeichenkette als Inhalt. Damit der Compiler weiss, dass du gerade einen String und keine Zahl zuweist, musst du ' davor und dahinter machen.
Beispiel:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| var einInteger:Integer; einString:String;
begin einInteger:=5; einString:='Hallo_Welt'; einString:='fünf'; einString:=IntToStr(einInteger); einString:='fünf'; einInteger:=StrToInt(einString); end; |
Gruss, Lukas
Thunderbird95 - Di 04.01.11 22:53
danke an alle. ihr habt mir sehr geholfen :D
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!