Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Keycodet

tuomas [23.04.2004 19:43:47]

#

Miten saan tarkistettua onko kaksi näppäintä samaan aikaan pohjassa?
Olen kyllä yrittänyt seuraavaa:
If keycode = 37 Then
If keycode = 38 Then
'Tähän tapahtumat
End IF
End IF

Sekä vielä tälläistä:

If Keycode = 37 And 38 Then
'tapahtumat tähän
End IF

Mutta kumpikaan ei toiminut.
Ensimmäisessä ei tapahtunut mitään ja toisessa suorittettiin koodi jo toisesta
napin painalluksesta.

Entä miten että tarkistan onko onko esim näppäin a pohjassa
ja näppäin b ei?

Kiitokset jo etukäteen!

T.M. [23.04.2004 20:08:06]

#

Hmm.. Ehkä siten että aina kun painetaan näppäintä niin se laittaa jonkin arvoksi jotain, ja sitten kun ei paineta sitä niin se poistaa sen arvon.
Sitten vain tarkistetaan onko 2 eri näppäimen arvot sellasina että ne ovat painettuina.
Muuta en nyt keksis tällä hetkellä, ja QB:tä en muutenkaan osaa kunnolla (oikeastaan yhtään) :)

sooda [23.04.2004 20:16:41]

#

https://www.ohjelmointiputka.net/haku.php?sana­=getasynckeystate

Meitzi [23.04.2004 20:23:29]

#

Esimerkki VB6:

Option Explicit

Private NappaintenTilat(256) As Boolean

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  NappaintenTilat(KeyCode) = True

  'Tämä koodi pitää siirtä johonkin muualle
  If NappaintenTilat(37) = True And NappaintenTilat(38) = True Then Me.Caption = " VASEN ja YLÖS alhaalla" Else Me.Caption = ""
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
  NappaintenTilat(KeyCode) = False
End Sub

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta