找回密码
 加入
搜索
查看: 3823|回复: 12

怎么做HOTKEY输入的控件,象smartgui里的那样

[复制链接]
发表于 2009-7-5 21:45:13 | 显示全部楼层 |阅读模式
如题
深感autoit的强大,但为什么GUI设计里面没有HOTKEY的输入控件呢。autohotkey里面有的,在autoit里面怎么做出这样的热键输入框的效果???
发表于 2009-7-5 22:04:57 | 显示全部楼层
热键输入框?解释清楚一点
 楼主| 发表于 2009-7-5 23:16:41 | 显示全部楼层
热键输入控件,象一般的输入框一样,但是只能显示你安的热键,比如:你按下CTRL+C,输入框里就显示CTRL+C
 楼主| 发表于 2009-7-5 23:20:12 | 显示全部楼层
换种问法:怎么才能做到一个输入框,只能显示你按下组合键的信息?好像很多地方都用到的吧,但是总碰不到这样的控件,autohotkey的一个GUI工具里有这个控件,但autoit里没有这个HOTKEY控件。那如何才能做到这样的输入框呢?
不知这次问的怎么样,请高手们解答一下,感谢!!!
 楼主| 发表于 2009-7-6 21:58:52 | 显示全部楼层
很难的问题吗?
请高手出来点拨一下~~~
发表于 2009-7-6 22:48:43 | 显示全部楼层
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("热键输入框", 208, 43, 192, 124)
$Input1 = GUICtrlCreateInput("按下CTRL+C", 16, 8, 177, 21)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
HotKeySet('^c','hot')
While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit

        EndSwitch
WEnd

Func hot()
        GUICtrlSetData($Input1,'CTRL+C')
        EndFunc
 楼主| 发表于 2009-7-6 23:11:26 | 显示全部楼层
太谢谢了!!!
能不能再帮忙思考下~
我想了想这样的话我只能输入CTRL+C,如果按下其它按键的话就要在代码里无限的列举按键了。
怎么才能显示按下的任意按键,不只是显示CTRL+C,例如我按下了CTRL+B,它就显示CTRL+B,或者按下更多的,它都能显示,任意按键都能显示
发表于 2009-7-7 00:50:25 | 显示全部楼层
本帖最后由 顽固不化 于 2009-7-7 01:05 编辑

终于明白你的意思了,完成这任务可能窗口置于事件模式较合适,但AU3对事件的定义并不多,无非是窗口形态变化、关闭,鼠标的按下、抬起、移动。而没找到有关键盘的事件。
如能在键盘按下时获取其键码之类的,就可以知道和显示相应的热键定义了。等三恨来解决吧。
实际上这是个“如何获取键码的问题”
这个函数,你可以研究一下:
_IsPressed
发表于 2009-7-7 02:07:13 | 显示全部楼层
发表于 2009-7-7 07:49:06 | 显示全部楼层
楼上提供的地址不错。。。。。。。
发表于 2009-7-9 04:39:46 | 显示全部楼层
本帖最后由 sxd 于 2009-7-9 05:11 编辑

http://www.autoitscript.com/forum/index.php?showtopic=96492
发表于 2009-7-9 08:45:35 | 显示全部楼层
呀,居然有这种udf
 楼主| 发表于 2009-7-9 21:50:55 | 显示全部楼层

太好暸~~~
謝謝答復的朋友們
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-23 01:42 , Processed in 0.078511 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表