MouseHit Problem (GUI)

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Mathe

Betreff: MouseHit Problem (GUI)

BeitragSo, Feb 22, 2009 18:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

ich programmiere seit zwei Tagen an einer GUI!
Heute hab ich die Buttons erstellt nun wenn ich jetzt meine Checkbox anklicke ist kein Hacken drin es liegt an MouseHit(1) aber ich verstehe nicht warum? Wenn ich MouseHit durch MouseDown ersetze funktioniert es!

Code: [AUSKLAPPEN]

Function AktionButton(id%)
mh1% = MouseHit(1)
gui.button = Object.button(id)
;Standart Button Overlap
If gui\btn_style = 1 And RectsOverlap(gui\btn_x,gui\btn_y,gui\btn_width,gui\btn_height,mx_gui,my_gui,1,1) Then
   btn_Overlap = gui\btn_id
Else
   btn_overlap = 0
EndIf
;Checkbox- & Radionbutton
;Checkboxbutton
If gui\btn_style = 2 And RectsOverlap(gui\btn_x,gui\btn_y,gui\btn_height,gui\btn_height,mx_gui,my_gui,1,1) and mh1 = 1 Then
   If gui\btn_CR_hit = 0 Then
      gui\btn_CR_hit = True
   ElseIf gui\btn_CR_hit = 1 Then
      gui\btn_CR_hit = False
   EndIf
EndIf
;Radionbutton
End Function


mfg.

The_Nici

BeitragSo, Feb 22, 2009 18:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Brauchst du sonst noch irgendwo in der mainloop MouseHit(1)?

Holzchopf

Meisterpacker

BeitragSo, Feb 22, 2009 18:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Weil MouseHit() den Zähler (anzahl Tastendrücke seit dem letzten Aufruf) bei jedem Aufruf nullt.
Sämtliche *Hit() Funktionen haben nur einmal in der Hauptschleife was zu suchen.
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm
 

Mathe

BeitragSo, Feb 22, 2009 18:25
Antworten mit Zitat
Benutzer-Profile anzeigen
hmmm... aber wenn ich MouseDown verwende brauch ich eine Verzögerung und das ist scheiße...

Holzchopf

Meisterpacker

BeitragSo, Feb 22, 2009 18:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Hä?

Nein du must einfach in deiner Hauptschleife mh1=MouseHit(1) schreiben und aus der Funktion rausnehmen, mh1 muss zudem als Global definiert sein. Das behebt dein Problem.
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm
 

Mathe

BeitragSo, Feb 22, 2009 19:07
Antworten mit Zitat
Benutzer-Profile anzeigen
^^ danke....

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group