ButtonClick_abfrage

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

NForcer

Betreff: ButtonClick_abfrage

BeitragSa, Jan 15, 2005 2:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi junx, ich bins wieder^^, die Nervensäge.

Ich habe nun mein Quiz schon etwas weiter gecodet und bin nun auf folgendes Problem gestoßen:
Wenn man auf einen Button Klickt der Richtig ist, zeigt mir das Programm das korrekt an und wenn man auf einen Button klickt der nicht korrekt ist, auch, allerdings, wenn man Cursor über keinen Button ist und man dann klickt, wird dies auch als Falsch gewertet :(.
Dies ist allerdings doof!
Ich weiß, ist wahrscheinlich ein banaler Fehler, aber ich arbeite da jetzt schon 1-2 Std dran und habe verschiedenste Varianten der Buttonabfrage versucht, aber jedesmal kam da ein anderer Fehler... bei meiner jetztigen Situation läuft es soweit relativ perfekt, bis eben auf diesen kleinen Patzer.
Mein code zur Abfrage:
Code: [AUSKLAPPEN]

If ImagesCollide(ButtonA,75,500,0,Cursor,MouseX(),MouseY(),0) Then
   Button = 1
EndIf

If ImagesCollide(ButtonB,255,500,0,Cursor,MouseX(),MouseY(),0) Then
   Button = 2
EndIf

If ImagesCollide(ButtonC,435,500,0,Cursor,MouseX(),MouseY(),0) Then
   Button = 3
EndIf

If ImagesCollide(ButtonD,615,500,0,Cursor,MouseX(),MouseY(),0) Then
   Button = 4
EndIf

If MouseHit(1)
   If Button = Richtig(Fragereihe,FrageNR_Dim(Fragereihe),RAntwort(Fragereihe,FrageNR_Dim(Fragereihe)))
      Text 330,400, "Richtig"
   EndIf
   
   If Button <> Richtig(Fragereihe,FrageNR_Dim(Fragereihe),RAntwort(Fragereihe,FrageNR_Dim(Fragereihe)))
      Text 330,400, "Falsch"
   EndIf
EndIf


Vielen dank, und bitte nicht schimpfen, ich habe wirklich schon einiges versucht, die Fehler wurden eher mehr als das es besser lief^^

#edit:
Es wäre sehr schön, wenn ihr keine(!) while-Schleifen benutzen würdet, da das Programm nicht angehalten werden soll... da müsste ich ja dann alles nochmal Zeichnen lassen...

Und bitte beachtet das noch mehr Buttons in der Fertigen Version vorhanden sein werden zb: Button = 5 (Ende); Button = 6 (Joker1); Button = 7 (Joker2) usw. usf. ...

Vielen Dank schonmal im Vorraus

#edit2:
Ich hab mir eben überlegt, ob das nicht mit ner Xor verknüfung geht... fragt sich nur WIE? *g*
Ich tüftel noch etwas... ich wäre trotzdem weiterhin sehr dankbar wenn ihr einen Lösungsansatz posten könntet^^
 

Klaas

BeitragSa, Jan 15, 2005 3:32
Antworten mit Zitat
Benutzer-Profile anzeigen
das sollte gehen:

Code: [AUSKLAPPEN]

If MouseHit(1)
   ; wenn du alles in die if abfrage reintust sparst du rechenzeit
   ; denn dann wird nur beim Klick auf collision getestet
   
   Button = 0 ; löschen damit von der vorheriegn frage nichts ausgelöst wird

   If ImagesCollide(ButtonA,75,500,0,Cursor,MouseX(),MouseY(),0) Then
      Button = 1
   EndIf
   
   If ImagesCollide(ButtonB,255,500,0,Cursor,MouseX(),MouseY(),0) Then
      Button = 2
   EndIf
   
   If ImagesCollide(ButtonC,435,500,0,Cursor,MouseX(),MouseY(),0) Then
      Button = 3
   EndIf
   
   If ImagesCollide(ButtonD,615,500,0,Cursor,MouseX(),MouseY(),0) Then
      Button = 4
   EndIf
   
   If Button > 0 Then
      If Button = Richtig(Fragereihe,FrageNR_Dim(Fragereihe),RAntwort(Fragereihe,FrageNR_Dim(Fragereihe)))
         Text 330,400, "Richtig"
      Else
         Text 330,400, "Falsch"
      EndIf
   Else
      ;Button ist 0, also wurde keiner der Knöpfe gedrückt
   EndIf   
EndIf
 

noir

Betreff: Re: ButtonClick_abfrage

BeitragSa, Jan 15, 2005 3:44
Antworten mit Zitat
Benutzer-Profile anzeigen
NForcer hat Folgendes geschrieben:
Ich hab mir eben überlegt, ob das nicht mit ner Xor verknüfung geht... fragt sich nur WIE? *g*


also xor kannst du für diesen zweck nicht sinnvoll benutzen.
 

NForcer

BeitragSa, Jan 15, 2005 14:21
Antworten mit Zitat
Benutzer-Profile anzeigen
vielen vielen Dank.
Hat alles super geklappt^^.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group