[R] Mettre une hotkey
Posté : sam. 21 janv. 2012 16:55
Salut tout le monde, j'aimerais définir une hotkey :
J'ai donc essayé hotkeyset :
Le problème est que du coup, partout, même dans d'autres fenêtres, le bouton del était monopolisé par mon application et de plus, sans être sur ma gui, en cliquant sur del, on pouvait supprimer des trucs sans s'en rendre compte...
J'aimerais donc savoir s'il était possible de définir un hotkey mais en fournissant le handle ou autre de la gui de façon à ce qu'il n'agisse que si la gui est active.
J'ai vu la solution
Mais elle n'est pas applicable à mon logiciel.
Il y a également
Mais je ne connais pas les équivalents de "$VK_OEM_MINUS" pour la touche del (ou "suppr")
Merci de m'éclairer, le dernier code m'a l'air applicable sur ma gui
J'ai donc essayé hotkeyset :
Code : Tout sélectionner
HotKeySet("{DEL}", "deletefiles")J'aimerais donc savoir s'il était possible de définir un hotkey mais en fournissant le handle ou autre de la gui de façon à ce qu'il n'agisse que si la gui est active.
J'ai vu la solution
Code : Tout sélectionner
; Define two dummy Controls in your GUI
$ButtonStrgA = GUICtrlCreateDummy()
$ButtonStrgC = GUICtrlCreateDummy()
...
; Set accelerator keys for Strg+a and Strg+c
Global $asAccelKeys[2][2] = [["^a", $ButtonStrgA],["^c", $ButtonStrgC]]
GUISetAccelerators($asAccelKeys)
...
While 1
$nMsg = GUIGetMsg(1)
Select
Case $nMsg[0] = $GUI_EVENT_CLOSE
Exit
Case $nMsg[0] = $ButtonStrgA
_SelectAll()
Case $nMsg[0] = $ButtonStrgC
_Clipboard()
EndSelect
WEndIl y a également
Code : Tout sélectionner
#Include <HotKey.au3>
Global Const $VK_OEM_PLUS = 0xBB
Global Const $VK_OEM_MINUS = 0xBD
Global $Form, $Label
Global $i = 0
$Form = GUICreate('MyGUI', 200, 200)
$Label = GUICtrlCreateLabel($i, 20, 72, 160, 52, 0x01)
GUICtrlSetFont(-1, 32, 400, 0, 'Tahoma')
GUISetState()
; Assign "CTRL-(+)" with MyFunc1() and "CTRL-(-)" with MyFunc2() for created window only
_HotKeyAssign(BitOR($CK_CONTROL, $VK_OEM_PLUS), 'MyFunc1', 0, $Form)
_HotKeyAssign(BitOR($CK_CONTROL, $VK_OEM_MINUS), 'MyFunc2', 0, $Form)
Do
Until GUIGetMsg() = -3
Func MyFunc1()
$i += 1
GUICtrlSetData($Label, $i)
EndFunc ;==>MyFunc1
Func MyFunc2()
$i -= 1
GUICtrlSetData($Label, $i)
EndFunc ;==>MyFunc2Merci de m'éclairer, le dernier code m'a l'air applicable sur ma gui