找回密码
 加入
搜索
查看: 2019|回复: 5

[AU3基础] 怎么去掉au3的友好提示?[已解决]

  [复制链接]
发表于 2011-5-18 18:56:04 | 显示全部楼层 |阅读模式
本帖最后由 lenlydia 于 2011-5-18 23:53 编辑

比如输入框,我强制使用$ES_NUMBER参数后,在输入字母的时候会提示"不能接受的字符",但我不想出现这样的提示。有什么办法可以解决吗?先谢谢
发表于 2011-5-18 20:56:38 | 显示全部楼层
可以用消息实现
 楼主| 发表于 2011-5-18 21:38:50 | 显示全部楼层
回复 2# netegg


    我这方面不是很熟悉,能给个列子吗?
发表于 2011-5-18 21:59:21 | 显示全部楼层
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GUIConstantsEx.au3>
#Region ### START Koda GUI section ### Form=c:\documents and settings\administrator\my documents\form1.kxf
$Form1 = GUICreate("test", 409, 260, 434, 170)
$Label1 = GUICtrlCreateLabel("X:", 40, 32, 86, 17)
$Input1 = GUICtrlCreateInput("", 120, 32, 121, 21);, BitOR($GUI_SS_DEFAULT_INPUT, $ES_NUMBER))
GUIRegisterMsg($WM_COMMAND, "MY_WM_COMMAND")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
 
While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
 
        EndSwitch
WEnd
 
 
 
Func MY_WM_COMMAND($hWnd, $msg, $wParam, $lParam)
        Local Const $EN_CHANGE = 0x300
 
        Local $nNotifyCode = BitShift($wParam, 16)
        Local $nID = BitAND($wParam, 0xFFFF)
        Local $hCtrl = $lParam
        If $nNotifyCode = $EN_CHANGE Then
                        if StringRegExp(GUICtrlRead($Input1),'[^\d]+',0) then 
                                GUICtrlSetData($Input1,StringRegExpReplace(GUICtrlRead($Input1),'[^\d]+',''))
                                ToolTip("error")
                        EndIf
        EndIf
EndFunc   ;==>MY_WM_COMMAND
发表于 2011-5-18 22:12:16 | 显示全部楼层
这个是不AU3的提示,而是edit等控件特有的的消息
但是这个消息是可控的。
要实现的话就监听控件的wm_char等消息,出现非期待值时发送EM_SHOWBALLOONTIP来设置自身的提示,这样就可以覆盖默认的提示了.
 楼主| 发表于 2011-5-18 23:52:51 | 显示全部楼层
谢谢各位的帮助。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-10-2 03:33 , Processed in 0.072500 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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