runningwater 发表于 2008-7-30 14:05:28

如何捕获Input的回车事件?

#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>

Opt("GUIOnEventMode", 1)

$formInput = GUICreate("查询", 266, 21, -1, -1, BitOR($WS_MINIMIZEBOX, $WS_SYSMENU, $WS_DLGFRAME, $WS_POPUP, $WS_GROUP, $WS_CLIPSIBLINGS), BitOR($WS_EX_TOOLWINDOW, $WS_EX_TOPMOST, $WS_EX_TRANSPARENT, $WS_EX_WINDOWEDGE))
$iptCondition = GUICtrlCreateInput("", 0, 0, 265, 21)
$iptCondition = GUICtrlCreateInput("", 0, 0, 265, 21)
GUICtrlSetOnEvent(-1, "iptConditionChange")
GUISetState(@SW_SHOW)

HotKeySet("{F8}", "ShowInputWindow")
HotKeySet("^{F8}", "HideInputWindow")

While 1
        Sleep(100)
WEnd

Func iptConditionChange()
        #cs
        If _IsPressed("0D") Then
                MsgBox("","","0d")
        Else
                MsgBox("","","")
        EndIf
        #ce
EndFunc   ;==>iptConditionChange

;显示输入窗口
Func ShowInputWindow()
        ViewInputWindow(True)
EndFunc   ;==>ShowInputWindow

;隐藏输入窗口
Func HideInputWindow()
        ViewInputWindow(False)
EndFunc   ;==>HideInputWindow

;设置窗口可见性
Func ViewInputWindow($Visible)
        If $Visible Then
                GUISetState(@SW_SHOW)
        Else
                GUISetState(@SW_HIDE)
        EndIf
EndFunc   ;==>ViewInputWindow
<P>&nbsp;</P>
<P>希望能在文本框 iptCondition 按下回车键的时候执行一些代码,可是当文本框内容发生变化时,iptConditionChange 根本不发生。</P>
<P>&nbsp;</P>
<P>请大家帮帮忙,应该怎么写好?</P>
<P>&nbsp;</P>

[ 本帖最后由 runningwater 于 2008-7-30 15:46 编辑 ]

runningwater 发表于 2008-7-30 15:46:02

已经找到问题所在了,第 10 行又创建了一个文本框,所以 Change 事件不发生。

thealert 发表于 2011-2-14 13:38:11

很好 学习了

子非鱼 发表于 2011-3-15 05:14:40

回复 1# runningwater


      好东西啊 ~~~留个脚印
页: [1]
查看完整版本: 如何捕获Input的回车事件?