jchang 发表于 2009-12-15 20:36:15

GUI中字体老是闪烁

本帖最后由 jchang 于 2009-12-16 10:58 编辑

我建了一个GUI脚本,部分代码如下:
While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
                     case ($Input1 OR $Input2)
                                        $text1=GUICtrlRead($Input1)
                                        $text2=GUICtrlRead($Input2)
                                        $iIndexA1=_ArraySearch($avArrayA,$text1,0,0,0,0)
                                        $iIndexA2=_ArraySearch($avArrayA,$text2,0,0,0,0)
                                        $iIndexB1=_ArraySearch($avArrayB,$text1,0,0,0,0)
                                        $iIndexB2=_ArraySearch($avArrayB,$text2,0,0,0,0)
                                        $iIndexC1=_ArraySearch($avArrayC,$text1,0,0,0,0)
                                        $iIndexC2=_ArraySearch($avArrayC,$text2,0,0,0,0)
                                          
                                        Select
                                        Case ($iIndexA1<>-1) Or ($iIndexA2<>-1)
                                        $Label1 = GUICtrlCreateLabel("A合同", 440, 120, 360, 17)
                                        Case ($iIndexB1<>-1) Or ($iIndexB2<>-1)
                                        $Label1 = GUICtrlCreateLabel("B合同", 440, 120, 360, 17)
                                  Case ($iIndexC1<>-1) Or ($iIndexC2<>-1)
                                  $Label1 = GUICtrlCreateLabel("C合同", 440, 120, 360, 17)
                                  CASE Else
                                $Label1 = GUICtrlCreateLabel("请正确输入", 440, 120, 360, 17)
                                EndSelect
                                       
                                       
        EndSwitch
WEnd


在以上代码中,由于使用了case ($Input1 OR $Input2)这句,使得只要鼠标在动的时候,label1中出现的字总是在闪烁,如果分别用case $Input1 和case $Input12来写代码,虽然字体不闪烁了,则又会造成代码的大量重复,大家有什么好办法吗?

水木子 发表于 2009-12-15 22:12:55

自定义函数While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case -3
                        Exit
                Case $Button1
                        abc()
                Case $Button2
                        abc()
        EndSwitch
WEnd

Func abc()
        MsgBox(0, '' ,'')
EndFunc       

jchang 发表于 2009-12-15 22:30:45

好主意,十分感谢!
页: [1]
查看完整版本: GUI中字体老是闪烁