hlzxcjx 发表于 2011-12-4 12:55:14

[已解决]如何定义热键才不会与系统热键冲突?

本帖最后由 hlzxcjx 于 2011-12-6 20:56 编辑

例如当定义了热键{Ctrl+C}"复制"、{Ctrl+V}"粘贴"后,系统就不能使用该热键了!能否在定义该热键后,当激活了Au3程序时,调用该热键;当Au3程序处于非激活状态时,系统也能使用该热键?

zch11230 发表于 2011-12-4 13:47:02

Dim $AccelKeys=[["^y", $YesID], ["^n", $NoID]]
GUISetAccelerators($AccelKeys)

hlzxcjx 发表于 2011-12-5 22:47:41

如此简单!谢谢!可惜该函数不能用在旧版本中,本人的程序是用旧代码编写,想换成新版本,但很多函数已改变,致使程序用不了,故该函数不能在我的程序中使用,遗憾!本人也懒得改代码了!

3mile 发表于 2011-12-6 00:06:16

回复 3# hlzxcjx
旧版本不能用?不知道有多旧?
莫非是传说中的2007 v3.2.10.0?
#include <WindowsConstants.au3>
HotKeySet('{F1}', '_Message')

$Form1 = GUICreate("Form1", 280, 250)
GUISetState()

Do
Until GUIGetMsg() = -3


Func _Message()
      If WinActive($Form1) Then
                MsgBox(0, '', '热键有效')
      Else
                HotKeySet('{F1}')
                Send('{F1}')
                HotKeySet('{F1}', '_Message')
      EndIf
EndFunc   ;==>_Message

hlzxcjx 发表于 2011-12-6 20:52:50

回复 4# 3mile


    还不够旧!传说中的3.2.5.7!崩溃中......
    果真是元老,解决了俺的问题,感谢!
页: [1]
查看完整版本: [已解决]如何定义热键才不会与系统热键冲突?