Ik wil graag voor een programma de knoppen opvangen die op het toetsenbord worden ingedrukt. Dus als ik de 1 indruk, dat er een bepaalde actie wordt uitgevoerd, bij 2 een andere enz.
Dit heb ik nu:
Alleen nu werkt het dus pas als de Key weer wordt losgelaten en ik wil dat ie constant door wordt uitgevoerd (dus als je de 1 inhoudt, de hele tijd die actie wordt uitgevoerd. Als de actie dan een 1 in een textbox zetten is, dat je een hele rij 1'en krijgt). Gebruik ik keydown, dan werkt het direct al niet meer. Keypress werkt weer iets anders:
Maar ook deze werkt niet.
Mijn vragen:
1. Welke van de drie soorten moet ik gebruiken voor mijn doel? (zelf denk ik keypressed)
2. Hoe krijg ik deze werkend?
Evt. mag het ook zo zijn dat je herhaaldelijk op de toets moet drukken om een hele reeks te krijgen, dat is niet zo'n probleem. Echter, het mag dus niet met KeyUp zijn, aangezien dat te 'traag' werkt.
Ik heb in de Form1_load al Me.KeyPreview = True gezet, aangezien dat nodig bleek te zijn (raar dat het niet tussen de eigenschappen staat van het form zelf in de designer
).
Dit heb ik nu:
code:
1
2
3
4
5
| Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
If e.KeyCode = Keys.Enter Then
btn1.Enabled = False
End If
End Sub |
Alleen nu werkt het dus pas als de Key weer wordt losgelaten en ik wil dat ie constant door wordt uitgevoerd (dus als je de 1 inhoudt, de hele tijd die actie wordt uitgevoerd. Als de actie dan een 1 in een textbox zetten is, dat je een hele rij 1'en krijgt). Gebruik ik keydown, dan werkt het direct al niet meer. Keypress werkt weer iets anders:
code:
1
2
3
4
5
| Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
If e.KeyChar = Chr(Keys.Enter) Then
btn1.Enabled = False
End If
End Sub |
Maar ook deze werkt niet.
Mijn vragen:
1. Welke van de drie soorten moet ik gebruiken voor mijn doel? (zelf denk ik keypressed)
2. Hoe krijg ik deze werkend?
Evt. mag het ook zo zijn dat je herhaaldelijk op de toets moet drukken om een hele reeks te krijgen, dat is niet zo'n probleem. Echter, het mag dus niet met KeyUp zijn, aangezien dat te 'traag' werkt.
Ik heb in de Form1_load al Me.KeyPreview = True gezet, aangezien dat nodig bleek te zijn (raar dat het niet tussen de eigenschappen staat van het form zelf in de designer