GLBasic forum

Other languages => GLBasic - de => Topic started by: Veritas on 2008-Oct-19

Title: Keyhitupdate() und KEY() kombiniert oder getriggert?
Post by: Veritas on 2008-Oct-19
Huhu,
ich hab folgende Frage. Ich brauche eine Funktion mit der man eine Taste drückt und das Event nur EINMAL ausgelöst wird, also habe ich die Keyhitupdate Funktion hier aus dem Forum benutzt. Wenn man die Taste jedoch länger drückt soll die Keyhitupdate Funktion ignoriert werden und wieder das ursprüngliche KEY() ausgeführt werden.
Ich dachte das sich das so beheben lässt. Allerdings stürzt mein Programm nach dem Start ab (schließt). Hat jemand eine Idee?

Code (glbasic) Select
                                      KeyhitupdateEIN = 1

A=KeyHit(GuthabenTaste)
B=KEY(GuthabenTaste)

Zeit = GETTIMER()

IF KeyhitupdateEIN > 0  
 
  KeyHitUpdate()

  IF A = -1 // Aktion nach dem Drücken der Guthaben-Taste
 
  IF Zeit > 3000
  KeyhitupdateEIN = 0

ELSE
A = B

ENDIF
ENDIF


Dankeschön =)
Liebe Grüße Veritas
Title: Re: Keyhitupdate() und KEY() kombiniert oder getriggert?
Post by: Schranz0r on 2008-Oct-19
Code (glbasic) Select
  IF Zeit > 3000
  KeyhitupdateEIN = 0


Wo setzt du die Zeit wieder auf null?
Wenns Programm abstürzt schalte mal den Debuger ein!
Wette da gibts ein Array ausserhalb des Dimbereichs ;)
Title: Re: Keyhitupdate() und KEY() kombiniert oder getriggert?
Post by: Veritas on 2008-Oct-19
ja aber welches? Der Code hat ehe ich das eingebaut hatte perfekt funktioniert. Das Null setzen war mir jetzt erstmal nicht so wichtig. Es sollte nur überhaupt einmal funktionieren =). Daüfr muss ichs dann ja nich wieder auf Null setzen ;).
Title: Re: Keyhitupdate() und KEY() kombiniert oder getriggert?
Post by: Schranz0r on 2008-Oct-19
Wenn der Debuger an ist, geht der normal direkt auf die Zeile, die das Problem beherbergt :)