Problem

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Kelix

Troll

Betreff: Problem

BeitragDo, März 29, 2007 16:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe ein Problem bei folgendem Code:

Graphics 1024,724
fontvariable = LoadFont (arial,60)
SetFont fontvariable
Locate 350,100
Print "Musik wählen"
fontvariable = LoadFont (arial,20)
SetFont fontvariable
Locate 425,280
Print "Pop- und Rochlieder = 1"
Locate 425,300
Print "Fußballlieder = 2"
Locate 425,320
Print "Jazzlied = 3"
Locate 280,200
x = Input ("Geben sie hier die Nummer ihrer gewünschten Musikart ein:")
If x = 1 Then
soundvariable = LoadSound("C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\BlitzBasic\Tastaturblitz/Bon Jovi - It's My Life.mp3")
channel = PlaySound(soundvariable)
EndIf
If x = 2 Then
soundvariable = LoadSound("C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\BlitzBasic\Tastaturblitz/Sportfreunde Stiller_54,74,90,2010.mp3")
channel = PlaySound(soundvariable)
EndIf
If x = 3 Then
soundvariable = LoadSound("C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\BlitzBasic\Tastaturblitz/Jazz.wav")
channel = PlaySound(soundvariable)
LoopSound(soundvariable)
Else
Cls
Locate 330,250
Print "Sie haben eine ungültige Nummer gewählt"
EndIf
WaitKey
Cls

Wenn man nun Nummer 1 oder 2 eingibt dann kommt Sie haben eine ungültige Nummer gewählt. Bei 3 nicht. Könnt ihr mir sagen wie ich es hinbekomme bei einer eingabe von 1 oder 2, dass nicht ungültige Nummer erscheint?

sirokuhl

BeitragDo, März 29, 2007 16:34
Antworten mit Zitat
Benutzer-Profile anzeigen
indem du die if's von 2 und 3 in elseif's umwandelst:
Code: [AUSKLAPPEN]
If x = 1 Then
soundvariable = LoadSound("C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\BlitzBasic\Tastaturblitz/Bon Jovi - It's My Life.mp3")
channel = PlaySound(soundvariable)
EndIf
ElseIf x = 2 Then
soundvariable = LoadSound("C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\BlitzBasic\Tastaturblitz/Sportfreunde Stiller_54,74,90,2010.mp3")
channel = PlaySound(soundvariable)
EndIf
ElseIf x = 3 Then
soundvariable = LoadSound("C:\Dokumente und Einstellungen\Kevin\Eigene Dateien\BlitzBasic\Tastaturblitz/Jazz.wav")
channel = PlaySound(soundvariable)
LoopSound(soundvariable)
Else
Cls
Locate 330,250
Print "Sie haben eine ungültige Nummer gewählt"
EndIf
 

ChristianK

BeitragDo, März 29, 2007 16:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Versuchs doch mal bei BlitzBase, falls dir das noch keiner geraten hat!
Außerdem solltest du die Codetags benutzen!

Silver_Knee

BeitragDo, März 29, 2007 16:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Du verknüpst nur das letzte if mit deinem Else: stellen wir x=1 passiert
Code: [AUSKLAPPEN]
...
If x=1;Hey das stimmt...
CODE1;dann führe ich das aus
endif

IF x=2;Das stimmt nicht
CODE2;also das übberspringen
Endif


If x=3;das stimmt wieder nicht
Code3;also überspringen
Else ; hey: ein else
  TEXT 0,0,"Falsche Zahl";Also diesen code ausführen
Endif
...

Du solltest hier mit Select case arbeiten
Code: [AUSKLAPPEN]
Select x
Case 1;Hey das stimmt
  CODE1;also führe ich diesen code aus
Case 2;X=2? das stimmt net
Code2;Das überspringe ich
Case 3;Wieder falsch...
Code3;Also auch überspringen
Default;Hmmm ich habe schon bei case 1 was ausgeführt....
TEXT 0,0,"FALSCH" ;Das kommt nur zum tragen falls ich nochnichts gemacht habe
End Select

und mit [ code ]^^
Edit: [ b ] durch einrücken ersetzt
  • Zuletzt bearbeitet von Silver_Knee am Do, März 29, 2007 17:09, insgesamt einmal bearbeitet
 

Beatenvoy

BeitragDo, März 29, 2007 16:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja Select-Case ist da die beste Lösung!

Code: [AUSKLAPPEN]

Select x
    Case 1
        soundvariable = LoadSound(bla bla bla...Song1)
    Case 2
        soundvariable = LoadSound(bla bla bla... Song2)
    Case 3
        soundvariable = LoadSound(bla bla bla... Song3)
    Default
        x = 1
        Text 10,10,"Kein gültiger Song!!"
        Delay 2000
End Select




PS:

Benutze Programm bezogene Pfade z.B "songs/Song.mp3"
  • Zuletzt bearbeitet von Beatenvoy am Do, März 29, 2007 17:17, insgesamt einmal bearbeitet

Silver_Knee

BeitragDo, März 29, 2007 17:07
Antworten mit Zitat
Benutzer-Profile anzeigen
@Beatenvoy
Du weisst schon das X>3 bei dir nie statt finden wird weil x nur 4 möglichkeiten hat: 1,2,3,irgendwas anderes...bei letzterer wird es auf eins gesetzt d.h.xhat nur noch 3 möglichkeiten: 1,2,3 und dann fragst du ob x>3 ist...... angesichts der möglichkeiten von x....... unwahrscheinlich^^
 

Beatenvoy

BeitragDo, März 29, 2007 17:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Oha da hast du wohl recht, da hab ich geschlafen Very Happy
habs geändert!

Tornado11

BeitragDo, März 29, 2007 19:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Sorry,will ja nicht stören, aber Threadtitel ist sehr vielaussagend...
Rolling Eyes

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group