Variable prüfen auf Inhalt

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

mavi

Betreff: Variable prüfen auf Inhalt

BeitragMo, Mai 11, 2009 14:13
Antworten mit Zitat
Benutzer-Profile anzeigen
hallo liebe blitzgemeinde Wink

Ich habe wiedermal eine Frage,
Gibt es ein befehl mit dem man "checken" kann ob eine variable einen Inhalt hat?

Ich programmiere gerade ein Menü... wenn ich dann eingebe

name$ = Input()
wird das in der schleife immer wiederholt und das möchte ich unterbrechen

mein code:
Code: [AUSKLAPPEN]
Repeat
DrawImage bg,0,0
DrawImage classdruid, 250, 180
DrawImage classmage,300,180
DrawImage classpaladin, 350, 180
DrawImage classwarrior, 400,180
SetFont font1
Text 10,10, "MonsterHunters - Charaktererstellung"
Text 90,100, "Charaktername: "
Text 90,180, "Charakterklasse: "
Locate 250,100
name$ = Input()






WaitTimer(timer)
Flip:Cls
Until KeyHit(57)


So würde ich ja jedesmal wenn sich die schleife einmal "rundgeht" den namen eingeben müssen. das will ich irgendwie unterbrecehn.

Starwar

BeitragMo, Mai 11, 2009 14:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
Code: [AUSKLAPPEN]
If name$ = "" Then name$=Input()



MFG
  • Zuletzt bearbeitet von Starwar am Mo, Mai 11, 2009 14:16, insgesamt einmal bearbeitet

Schnittlauch

Unkraut

BeitragMo, Mai 11, 2009 14:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei strings könntest du einfach die Länge des Strings abfragen und wenn diese ungleich null ist wurde etwas eingegeben.
Die Befehle dazu findest du in der Hilfe.
Ich wars nicht.
 

mavi

BeitragMo, Mai 11, 2009 14:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Starwar hat Folgendes geschrieben:
Hi,
Code: [AUSKLAPPEN]
If name$ = "" Then name$=Input()



MFG



Starwar das hatte ich auch schon versucht, aber das geht nicht :O

Starwar

BeitragMo, Mai 11, 2009 14:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Verzichte auf Input und mach deine eigene Texteingabe.
http://silizium-net.de/bbcodea4.htm
Dann kannst du auch alles geau kontollieren.

Aber der Code müsste funktionieren. Du kannst einfach mal manuell testen ob was in der Vriable steht:
Print "'"+name$+"'"
MFG

ozzi789

BeitragMo, Mai 11, 2009 14:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
If Len(name$)<1
name$=Input()
endif


Wie schon erwähnt, Input ist blöd, da es das ganze Programm anhält
Such mal in der Forensuche nach Eingaberoutine oder schau dir GetKey an Smile

mfg
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5
 

mavi

BeitragMo, Mai 11, 2009 14:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Repeat
;DrawImage bg,0,0
;DrawImage classdruid, 250, 180
;DrawImage classmage,300,180
;DrawImage classpaladin, 350, 180
;DrawImage classwarrior, 400,180
;SetFont font1
Text 10,10, "MonsterHunters - Charaktererstellung"
Text 90,100, "Charaktername: "
Text 90,180, "Charakterklasse: "
   While Len(name$) > 0
      name$ = Input()
   Wend

Rect mcursor,180, 45,45, 0


If KeyHit(203) Then
   mcursor = mcursor - 50
EndIf

If KeyHit(205) Then
   mcursor = mcursor + 50
EndIf

WaitTimer(timer)
Flip:Cls
Until KeyHit(57)


habe mal das wichtigste hierreinkopiert und grafiken als kommentar gemacht probiert mal aus mit Input() muss man komischer weise 2x mit enter bestätigen :O ?
Es ist nicht schlimm wenn das Programm anhält...

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragMo, Mai 11, 2009 16:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie oben schon beschrieben

anstatt

Code: [AUSKLAPPEN]
   While Len(name$) > 0
      name$ = Input()
   Wend

dieses
Code: [AUSKLAPPEN]
If name$ = "" Then name$=Input()
[BB2D | BB3D | BB+]

ozzi789

BeitragMo, Mai 11, 2009 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Ohne Schleife!
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group