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

[GUI管理] 【已完美解决--谢谢水木子老师】求教实现combobox回车确认编辑框编辑结束的代码或方法

  [复制链接]
发表于 2014-7-10 21:04:59 | 显示全部楼层 |阅读模式
本帖最后由 wangms 于 2014-7-12 01:46 编辑

组合框combobox编辑框编辑结束后想回车确认,可没有任何反应,据说回车的消息被什么对话框截止。求教各位老师实现回车确认编辑框编辑结束的代码或方法,在此谢谢先啦!!
 楼主| 发表于 2014-7-10 21:11:24 | 显示全部楼层
百度有关资料,可用转换消息的办法,使回车消息重新能被截获,可au3如何实现?
 楼主| 发表于 2014-7-11 00:17:23 | 显示全部楼层
再次请教:回车如何获取到combobox编辑框中的文本?
发表于 2014-7-11 11:10:19 | 显示全部楼层
提问时,附上自己的代码是解决问题的捷径
发表于 2014-7-11 17:02:12 | 显示全部楼层
本帖最后由 水木子 于 2014-7-11 19:41 编辑

GUICreate('', 300, 100)
$Combo1 = GUICtrlCreateCombo('', 50, 40, 200, 21)
$Button1 = GUICtrlCreateButton('', 0, 0, 0, 0)
GUICtrlSetState(-1, 32)
Dim $AccelKeys[1][2] = [['{Enter}', $Button1]]
GUISetAccelerators($AccelKeys)
GUISetState()

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case -3
                        Exit
                Case $Button1
                        MsgBox(0, 0, GUICtrlRead($Combo1))
        EndSwitch
WEnd
 楼主| 发表于 2014-7-11 18:40:10 | 显示全部楼层
回复 5# 水木子


谢谢老师!!完全符合要求。再次谢谢水木子老师!!!
 楼主| 发表于 2014-7-11 18:44:39 | 显示全部楼层
Dim $AccelKeys[1][2] = [['{Enter}', $Button1]]
GUISetAccelerators($AccelKeys)

精华啊!!见都没见过,真是大师级老师!
 楼主| 发表于 2014-7-11 19:02:33 | 显示全部楼层
再次请教水木子老师,设置的加速键必须作用于 GUICtrlCreateButton 她吧?
发表于 2014-7-11 19:48:17 | 显示全部楼层
回复 8# wangms

你可以将 GUICtrlCreateButton 替换成 GUICtrlCreateLabel 试试!
发表于 2014-7-13 09:21:05 | 显示全部楼层
这一招我已经在用了,灰常的棒那
 楼主| 发表于 2014-7-13 12:01:53 | 显示全部楼层
回复 4# afan


   谢谢大师的真心提醒!我会按照您的要求做的。
发表于 2014-8-26 20:14:13 | 显示全部楼层
回复 5# 水木子


    另一种方法是 用 HotKeySet  ,然后在 while循环里检测窗体是否激活. 激活了 重新注册热键,  非激活状态, 取消热键
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-18 15:39 , Processed in 0.084401 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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