heroxianf 发表于 2016-11-5 15:04:50

能否加个判断知道是在哪一个combox里敲了回车[已解决]

本帖最后由 heroxianf 于 2016-11-6 12:43 编辑

#Include <Misc.au3>
#include <ComboConstants.au3>
#include <WindowsConstants.au3>

GUICreate("Form1", 280, 100)
$Combo1 = GUICtrlCreateCombo("Combo1", 20, 20, 200, 30)
GUICtrlSetData(-1, "Combo2|Combo3|Combo4|Combo5")
$Combo2 = GUICtrlCreateCombo("Combo2", 20, 50, 200, 30)
GUICtrlSetData(-1, "Combo2|Combo3|Combo4|Combo5")
GUISetState(@SW_SHOW)
$dll = DllOpen("user32.dll")

While 1
      If _IsPressed("0D", $dll) Then MsgBox(0,'回车键被按下', GUICtrlRead($Combo2))
      $nMsg = GUIGetMsg()
      Switch $nMsg
                Case -3
                        Exit

      EndSwitch
WEnd

zxhou1 发表于 2016-11-5 17:26:52

{:face (125):}

afan 发表于 2016-11-5 20:53:12

不用在循环里判断,直接注册回车快捷键并判断当前的焦点

heroxianf 发表于 2016-11-5 21:07:08

回复 3# afan


    a大,求代码啊

heroxianf 发表于 2016-11-5 21:58:22

回复 3# afan


    A大,注册和获取坐标整不明白了!

afan 发表于 2016-11-5 23:46:02

Global $ik
GUICreate('', 280, 100)
GUICtrlCreateCombo('Combo1', 20, 20, 200, 30)
GUICtrlSetData(-1, 'Combo2|Combo3|Combo4|Combo5')
GUICtrlCreateCombo('Combo2', 20, 50, 200, 30)
GUICtrlSetData(-1, 'Combo2|Combo3|Combo4|Combo5')
GUISetState()
$ik = GUICtrlCreateDummy()
Local $ak = [['{Enter}', $ik]]
GUISetAccelerators($ak)
While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case -3
                        Exit
                Case $ik
                        MsgBox(0, '', ControlGetFocus('') = 'Edit1' ? 'Combo1' : 'Combo2')
        EndSwitch
WEnd

heroxianf 发表于 2016-11-6 12:43:34

回复 6# afan


    谢谢A大,一直用风行者的代码,总想简洁一下。{:face (356):}

heroxianf 发表于 2016-11-6 13:33:17

本帖最后由 heroxianf 于 2016-11-6 13:51 编辑

回复 6# afan


    A大,Local $ak = [['{Enter}', $ik]]   怎么确定这个数组就是这个值呢?是不是有其他值的存在?

afan 发表于 2016-11-6 14:34:49

回复 8# heroxianf


    看下 GUISetAccelerators() 帮助

heroxianf 发表于 2016-11-6 14:48:22

回复 9# afan


    大体明白了,我修改成事件模式就没有效果了,是不是不支持事件模式?

chzj589 发表于 2016-11-6 15:17:30

回复afan


    大体明白了,我修改成事件模式就没有效果了,是不是不支持事件模式?
heroxianf 发表于 2016-11-6 14:48 http://www.autoitx.com/images/common/back.gif
支持事件模式!是你不会改!

heroxianf 发表于 2016-11-6 16:49:05

回复 11# chzj589


    不要说的那么直白嘛( ˘͈ ᵕ ˘͈ )

heroxianf 发表于 2016-11-6 20:35:00

回复 11# chzj589

搞定了,这小事A大又会说不注意基础了。   丢人啊{:face (197):}

chzj589 发表于 2016-11-6 21:15:46

本帖最后由 chzj589 于 2016-11-6 21:22 编辑

回复 13# heroxianf
代码过不了是经常的事,但不要急躁,要有耐心----
抽根烟,喝杯茶,认真检查一遍代码,寻找思路,查看帮助,搜索帖子------
会找到答案的。

heroxianf 发表于 2016-11-6 21:59:31

回复 14# chzj589


    你说的对,我现在把之前消息模式全部转成事件模式   有点要自己检查一下。
页: [1] 2
查看完整版本: 能否加个判断知道是在哪一个combox里敲了回车[已解决]