Machine,
Espero que isso lhe ajude. Ve se me fala o resultado. blz ?
Título da Dica: Teclado sensível ao contexto
Postada em 19/9/2000 por Darlan Oliveira
--------------------------------------------------------------
Coloque no módulo .BAS
--------------------------------------------------------------
Declare Function GetAsyncKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
______________________________________________________________
coloque no activate do form
--------------------------------------------------------------
Do While True
DoEvents
If GetAsyncKeyState(vbKeyEscape) < 0 Then 'faça algo
If GetAsyncKeyState(vbKeyF2) < 0 Then 'faça algo
If GetAsyncKeyState(vbKeyF8) < 0 Then 'faça algo
Loop
---------------
---------------
Título da Dica: Desabilitando e Habilitando o Teclado
Postada em 21/2/2003 por Fábio/SP
---------------------------------------------------------
Shell "Rundll32.exe keyboard,disable", vbNormalFocus
Para Habilitar:
Shell "Rundll.exe keyboard,enable", vbNormalFocus
----------------
----------------
Título da Dica: SendKeys para nao travar o teclado no Win 2000
Postada em 7/7/2003 por Everest
--------------------------------------------------------------------------------
O Sendkeys quando usado no Windows 2000 pode causar o travamento do teclado. Não trava o sistema, somente o teclado. Para evitar esse problema, pode-se utilizar o seguinte código para simular o tab ao pressionar Enter:
'Em um modulo:
Public Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd as long, byval wMsg as Long, byval wParam as Long, Iparam as Any) as Long
Public Const WM_KEYDOWN = &H100
Public Const VK_TAB=&h9
'E nos eventos de tratamento de tecla :
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim RetVal
If KeyAscii = 13 Then
RetVal = PostMessage(Me.hwnd, WM_KEYDOWN, VK_TAB, 0)
KeyAscii = 0
End If
End Sub