happytc 发表于 2011-6-28 07:32:19

怎么让Input框里的数字不自动添加逗号?

如下面的代码,点一下那个UpDown的上下按纽,本来是2012,却变成了科学表示法:2,012了
太讨厌了

GUICreate("Test")
$Input = GUICtrlCreateInput(2011, 10, 10, 100, 20)
GUICtrlCreateUpdown($Input)

GUISetState()

While True
        Switch GUIGetMsg()
                Case -3
                        Exit
                Case $Input
                        MsgBox(0,0,GUICtrlRead($Input))
        EndSwitch
WEnd

pusofalse 发表于 2011-6-28 09:19:44

截取WM_NOTIFY消息。

happytc 发表于 2011-6-28 09:29:18

回复 2# pusofalse

啊,这么麻烦呀,我还以为在那里定义特别样式就可以解决呢

算了,用笨方法了:


GUICreate("Test")
$Input = GUICtrlCreateInput(2011, 10, 10, 100, 20, BitOR($ES_CENTER, $ES_NUMBER))
GUICtrlCreateUpdown($Input)

GUISetState()

While True
        Switch GUIGetMsg()
                Case -3
                        Exit
                Case $Input
                        $Year = Int(StringReplace(GUICtrlRead($Input), ",", ""))
                        GUICtrlSetData($Input, $Year)
        EndSwitch
WEnd

pusofalse 发表于 2011-6-28 09:46:02

回复 3# happytc


    多调用一些GUIRegisterMsg截取消息吧,你慢慢就会发现用这种方法比GUIGetMsg、GUICtrlSetOnEvent强N多倍。

大绯狼 发表于 2011-6-28 10:25:11

GUICtrlCreateUpdown($Input,0x80)

happytc 发表于 2011-6-29 00:16:06

GUICtrlCreateUpdown($Input,0x80)
大绯狼 发表于 2011-6-28 10:25 http://www.autoitx.com/images/common/back.gif


    谢也
原来我也瞄了下帮助,居然没有看到这个$UDS_NOTHOUSANDS样式。前面想也应该有这样子的样式的

happytc 发表于 2011-6-29 00:31:46

回复happytc


    多调用一些GUIRegisterMsg截取消息吧,你慢慢就会发现用这种方法比GUIGetMsg、GUI ...
pusofalse 发表于 2011-6-28 09:46 http://www.autoitx.com/images/common/back.gif

的确不大喜欢用GUIRegisterMsg,别的没什么,就是它不能传递参数。我又不喜欢全局变量
对au3里的一些函数不能传递参数很是无奈呀
页: [1]
查看完整版本: 怎么让Input框里的数字不自动添加逗号?