Elikkä kuinka saa ohjelman suoltamaan tekstiä jos painaa esim. ctrl + alt + u?
Sen pitäisi toimia myös vaikka se ohjelma ei olisikaan päällimmäisenä. kiitos.
Öhh... GetAsyncKeyStatella saisit varmaan jonkinlaisen virityksen...
Soodan tekemä GetAsyncKeyState-koodivinkki
Katot sitten vaan että onko ctrl pohjassa, jos on niin onko alt pohjassa, ja jos on niin katot onko u (tai jokin muu) pohjassa.
Miksi tämä ei toimi?
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Public Function NappiPohjassa(Nappi As Long)
'jos funktion palautusarvon eniten merkitsevä bitti on päällä,
'nappi on tällä hetkellä pohjassa
NappiPohjassa = GetAsyncKeyState(Nappi) And &H8000
End Function
Public Function NappiPainettu(Nappi As Long)
'jos funktion palautusarvon vähiten merkitsevä bitti on päällä,
'nappia on painettu viime GetAsyncKeyState funkkarin kutsun jälkeen
NappiPainettu = GetAsyncKeyState(Nappi) And 1
End Function
Private Sub Form_Load()
Show
NappiPainettu (&H10) 'preventtaa sen, että jos ennen ohjelman käynnistymistä on painanut
Do
DoEvents
If NappiPainettu(&H7B) Then SendKeys "moi!", True
Loop
End SubOnko Formin KeyPreview arvo True ?
Private Sub nappi(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
if e.keycode = a then
messagebox.show("PLAA")
end if
End SubJa tietysti Formin KeyPreview arvo pitää olla true.
Voi olla että helpottaa koodin kirjoitusta jos laittaa
imports system.windows.form
Aihe on jo aika vanha, joten et voi enää vastata siihen.