chron 发表于 2015-3-25 20:16:29

【已解决】TAB标签IP控件隐藏后读取IP值问题

本帖最后由 chron 于 2015-3-26 19:14 编辑

http://www.autoitx.com/forum.php?mod=viewthread&tid=28443&highlight=IP%BF%D8%BC%FE
根据这篇文章解决了IP控件所有标签页都显示的问题,可是在使用该代码输入IP后读取IP值的时候就错误,求指点!谢谢!
如下:
$hGui = GUICreate('TAB内显隐Ip控件 By Afan')
$tab = GUICtrlCreateTab(5, 5, 392, 370)
GUICtrlCreateTabItem('标签页 1')
GUICtrlCreateTabItem('标签页 2')
GUICtrlCreateTabItem('标签页 3')
GUICtrlCreateTabItem('标签页 4')
$IpShow = GUICtrlCreateTabItem('有IP页 5')
$NetBtn = GUICtrlCreateButton("连接", 250, 250, 75, 25)
GUICtrlCreateTabItem('标签页 6')
GUICtrlCreateTabItem('')
$IP = _GUICtrlIpAddress_Create($hGui, 211, 184, 122, 18)
_GUICtrlIpAddress_Set($IP, '192.168.1.1')
_GUICtrlIpAddress_ShowHide($IP, @SW_HIDE)

GUISetState()
While 1
      Switch GUIGetMsg()
                Case -3
                        Exit
                Case $tab
                        Switch GUICtrlRead($tab)
                              Case $IpShow - 4
                                        _GUICtrlIpAddress_ShowHide($IP, @SW_SHOW)
                              Case Else
                                        _GUICtrlIpAddress_ShowHide($IP, @SW_HIDE)

                        EndSwitch
                                        Case $IP
                                                $IPInfo = GUICtrlRead ($IP)
                                        Case $NetBtn
                                                MsgBox(4096, "", $IPInfo)
                EndSwitch
WEnd

报错信息:
+>执行环境:
+>        CPU构架:        X64
+>        系统构架:        X64
+>        系统语言:        0409
+>        键盘布局:        00000804
+>        内存总量:        8050MB
+>        内存剩余:        5209MB
+>        操作系统:        UNKNOWN
+>        AU3版本:        3.3.9.0
+> ============================================
>运行 AU3Check (1.54.23.0)开始目录:D:\Programs\01-AutoIT
+>20:12:27 AU3Check 完成:0
>运行:(3.3.9.0):D:\Programs\01-AutoIT\autoit3_x64.exe "C:\Users\Chen\Desktop\ddddddd.au3"   
"C:\Users\Chen\Desktop\ddddddd.au3" (39) : ==> ??????????.:
MsgBox(4096, "", $IPInfo)
MsgBox(4096, "", ^ ERROR
->20:12:30 AutoIT3.exe 完成::1
+>20:12:31 ACNWrapper 完成..
>退出代码: 1        运行时间: 4.312 秒

shqf 发表于 2015-3-25 20:35:29

未点击过$IP控件, $IPInfo = GUICtrlRead ($IP)这一句没执行到,再点击$NetBtn控件, MsgBox(4096, "", $IPInfo)中的变量还未赋值。

chron 发表于 2015-3-25 20:58:44

回复 2# shqf


   谢谢! 我已经在IP输入框手动输入了,但还是程序闪退。。。

afan 发表于 2015-3-25 21:23:15

为什么有些人贴代码总是
1,用不能直接运行的代码?
2,头文件呢?
3,代码标签也不会插入吗?#include <GuiIPAddress.au3>

$hGui = GUICreate('TAB内显隐Ip控件 By Afan')
$tab = GUICtrlCreateTab(5, 5, 392, 370)
GUICtrlCreateTabItem('标签页 1')
GUICtrlCreateTabItem('标签页 2')
GUICtrlCreateTabItem('标签页 3')
GUICtrlCreateTabItem('标签页 4')
$IpShow = GUICtrlCreateTabItem('有IP页 5')
$NetBtn = GUICtrlCreateButton("连接", 250, 250, 75, 25)
GUICtrlCreateTabItem('标签页 6')
GUICtrlCreateTabItem('')
$IP = _GUICtrlIpAddress_Create($hGui, 211, 184, 122, 18)
_GUICtrlIpAddress_Set($IP, '192.168.1.1')
_GUICtrlIpAddress_ShowHide($IP, @SW_HIDE)

GUISetState()
While 1
        Switch GUIGetMsg()
                Case -3
                        Exit
                Case $tab
                        Switch GUICtrlRead($tab)
                                Case $IpShow - 4
                                        _GUICtrlIpAddress_ShowHide($IP, @SW_SHOW)
                                Case Else
                                        _GUICtrlIpAddress_ShowHide($IP, @SW_HIDE)

                        EndSwitch

                Case $NetBtn
                        MsgBox(4096, "", _GUICtrlIpAddress_Get($IP))
        EndSwitch
WEnd

chron 发表于 2015-3-25 21:36:34

回复 4# afan


    版版淡定!下次一定注意!谢谢了,原来用错了函数......

lxwlxwayy 发表于 2015-3-25 23:16:30

帮你顶{:face (288):}

gwgelin 发表于 2015-4-12 03:33:56

虽然我这简单的回复属于灌水,但也是对楼主莫大的支持
页: [1]
查看完整版本: 【已解决】TAB标签IP控件隐藏后读取IP值问题