DESABILITAR O CTRL ESC
so mais uma duvida simples como faço para desabilitar o CTRL ESC
Tanto la la la e naum vi nada de ctrl esc...vamos la,acho que tenho algo aki na manga q da pra ajudar,inclusive o codigo citado acima pelo colega:NSHIGA acho que foi eu mesmo que postei.
'Habilitar e Desabilitar o CTRL ESC:
'insira 3 commandButton e 1 module
'no modulo
Option Explicit
Private mHook As Long
Private Const WH_KEYBOARD_LL As Long = 13&
Private Type tagKBDLLHOOKSTRUCT
vkCode As Long
scanCode As Long
flags As Long
time As Long
dwExtraInfo As Long
End Type
'
Private Const VK_TAB As Long = &H9
Private Const VK_CONTROL As Long = &H11 ' tecla Ctrl
' tecla Alt
Private Const VK_ESCAPE As Long = &H1B
' tecla Supr (Del)
'
Private Const LLKHF_ALTDOWN As Long = &H20&
Private Const HC_ACTION As Long = 0&
Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" _
(ByVal idHook As Long, ByVal lpfn As Long, _
ByVal hMod As Long, ByVal dwThreadId As Long) As Long
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function CallNextHookEx Lib "user32" _
(ByVal hHook As Long, ByVal nCode As Long, _
ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function GetAsyncKeyState Lib "user32" _
(ByVal vKey As Long) As Integer
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(Destination As Any, Source As Any, ByVal Length As Long)
Public Function LLKeyBoardProc(ByVal nCode As Long, _
ByVal wParam As Long, _
ByVal lParam As Long _
) As Long
Dim pkbhs As tagKBDLLHOOKSTRUCT
Dim ret As Long
'
ret = 0
CopyMemory pkbhs, ByVal lParam, Len(pkbhs)
If nCode = HC_ACTION Then
If pkbhs.vkCode = VK_ESCAPE Then
If (GetAsyncKeyState(VK_CONTROL) And &H8000) Then
ret = 1
End If
End If
If pkbhs.vkCode = VK_TAB Then
If (pkbhs.flags And LLKHF_ALTDOWN) <> 0 Then
ret = 1
End If
End If
If pkbhs.vkCode = VK_ESCAPE Then
If (pkbhs.flags And LLKHF_ALTDOWN) <> 0 Then
ret = 1
End If
End If
'
End If
'
If ret = 0 Then
ret = CallNextHookEx(mHook, nCode, wParam, lParam)
End If
'
LLKeyBoardProc = ret
End Function
Public Sub HookKeyB(ByVal hMod As Long)
mHook = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf LLKeyBoardProc, hMod, 0&)
End Sub
Public Sub UnHookKeyB()
If mHook <> 0 Then
UnhookWindowsHookEx mHook
End If
End Sub
'Agora coloki o codigo abaixo no form
Option Explicit
Private Sub Command3_Click()
' encerra o programa
Unload Me
End Sub
Private Sub Command1_Click()
' desabilita o ctrl esc
HookKeyB App.hInstance
End Sub
Private Sub Command2_Click()
' habilita o ctrl esc
UnHookKeyB
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
' aki pra quando encerrar o programa ele voltar ao normal
UnHookKeyB
End Sub
'Qualquer duvida mande 1 email que posso te ajudar...
'Habilitar e Desabilitar o CTRL ESC:
'insira 3 commandButton e 1 module
'no modulo
Option Explicit
Private mHook As Long
Private Const WH_KEYBOARD_LL As Long = 13&
Private Type tagKBDLLHOOKSTRUCT
vkCode As Long
scanCode As Long
flags As Long
time As Long
dwExtraInfo As Long
End Type
'
Private Const VK_TAB As Long = &H9
Private Const VK_CONTROL As Long = &H11 ' tecla Ctrl
' tecla Alt
Private Const VK_ESCAPE As Long = &H1B
' tecla Supr (Del)
'
Private Const LLKHF_ALTDOWN As Long = &H20&
Private Const HC_ACTION As Long = 0&
Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" _
(ByVal idHook As Long, ByVal lpfn As Long, _
ByVal hMod As Long, ByVal dwThreadId As Long) As Long
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function CallNextHookEx Lib "user32" _
(ByVal hHook As Long, ByVal nCode As Long, _
ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function GetAsyncKeyState Lib "user32" _
(ByVal vKey As Long) As Integer
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(Destination As Any, Source As Any, ByVal Length As Long)
Public Function LLKeyBoardProc(ByVal nCode As Long, _
ByVal wParam As Long, _
ByVal lParam As Long _
) As Long
Dim pkbhs As tagKBDLLHOOKSTRUCT
Dim ret As Long
'
ret = 0
CopyMemory pkbhs, ByVal lParam, Len(pkbhs)
If nCode = HC_ACTION Then
If pkbhs.vkCode = VK_ESCAPE Then
If (GetAsyncKeyState(VK_CONTROL) And &H8000) Then
ret = 1
End If
End If
If pkbhs.vkCode = VK_TAB Then
If (pkbhs.flags And LLKHF_ALTDOWN) <> 0 Then
ret = 1
End If
End If
If pkbhs.vkCode = VK_ESCAPE Then
If (pkbhs.flags And LLKHF_ALTDOWN) <> 0 Then
ret = 1
End If
End If
'
End If
'
If ret = 0 Then
ret = CallNextHookEx(mHook, nCode, wParam, lParam)
End If
'
LLKeyBoardProc = ret
End Function
Public Sub HookKeyB(ByVal hMod As Long)
mHook = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf LLKeyBoardProc, hMod, 0&)
End Sub
Public Sub UnHookKeyB()
If mHook <> 0 Then
UnhookWindowsHookEx mHook
End If
End Sub
'Agora coloki o codigo abaixo no form
Option Explicit
Private Sub Command3_Click()
' encerra o programa
Unload Me
End Sub
Private Sub Command1_Click()
' desabilita o ctrl esc
HookKeyB App.hInstance
End Sub
Private Sub Command2_Click()
' habilita o ctrl esc
UnHookKeyB
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
' aki pra quando encerrar o programa ele voltar ao normal
UnHookKeyB
End Sub
'Qualquer duvida mande 1 email que posso te ajudar...
Tópico encerrado , respostas não são mais permitidas