找回密码
 加入
搜索
查看: 10986|回复: 15

[GUI管理] 【已解决】内嵌IE后退和前进按钮失败!

  [复制链接]
发表于 2012-11-24 12:49:38 | 显示全部楼层 |阅读模式
本帖最后由 chamlien 于 2012-12-1 00:38 编辑

While 1
        $msg = GUIGetMsg()
        Select
            Case $msg = $GUI_EVENT_CLOSE
                ExitLoop
            Case $msg = $GUI_Button_Home
                $oIE.navigate("hao123.com")
            Case $msg = $GUI_Button_Back
                $oIE.GoBack
            Case $msg = $GUI_Button_Forward
                $oIE.GoForward
            Case $msg = $GUI_Button_Stop
                $oIE.Stop
        EndSelect
    WEnd



这样的事件,打开GUI后如果没有执行任何操作就点击“后退”或者“前进”,就会提示The requested action with this object has failed并且程序会退出,怎么样解决掉这些后退或者前进的BUG呢?
发表于 2012-11-24 14:12:43 | 显示全部楼层
让 _IEAction 函数英雄无用武之地
 楼主| 发表于 2012-11-24 14:31:52 | 显示全部楼层
回复 2# bob

楼上的意思是、?我还是菜鸟,怎么解决呢
发表于 2012-11-24 18:28:05 | 显示全部楼层
本帖最后由 annybaby 于 2012-11-24 18:48 编辑

回复 3# chamlien

没有出现问题哦,是不是你的版本问题呢??
发表于 2012-11-25 00:03:51 | 显示全部楼层
我使用的是这个:
Send("{BROWSER_BACK}")
还有其他的操作,具体你查查帮助吧。
 楼主| 发表于 2012-11-25 19:27:43 | 显示全部楼层
我使用的是这个:还有其他的操作,具体你查查帮助吧。
ppzpph 发表于 2012-11-25 00:03



这个就是我一开打程序,然后点击“后退”出现的错误,然后点击确定之后,程序就退出了。我看了一下中文的帮助资料,$oIE.GoBack是在操作历史里返回上一步,但出现刚开始打开的时候我没有进行任何前进的操作,所以点击后退就会出现这个问题。。。
我的能力和表达有限,希望各位能理解并给予帮助!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2012-11-30 13:51:34 | 显示全部楼层
回复 4# annybaby

这是我的代码:

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

Opt('MustDeclareVars', 1)
   #NoTrayIcon
   
   Dim $oIE, $GUIActiveX, $GUI_Button_Back, $GUI_Button_Forward
   Dim $GUI_Button_Home, $msg
        
   $oIE = ObjCreate("Shell.Explorer.2")
        
        GUICreate("文件共享测试版", 890, 600)
                GUISetBkColor(0x00E0FFFF)
        $GUIActiveX = GUICtrlCreateObj ($oIE, -1, 50, 890, 600)
        $GUI_Button_Back = GUICtrlCreateButton("后退", 53, 8, 70, 28)
        $GUI_Button_Forward = GUICtrlCreateButton("前进", 148, 8, 70, 28)
        $GUI_Button_Home = GUICtrlCreateButton("主页", 246, 8, 70, 28)
                        MsgBox(64,"温馨提示", "如果要求输入用户名的话呢"& @CRLF & @CRLF &"输入administrator按回车键试试吧")
        $oIE.navigate("\\172.21.3.8")
            GUISetState(-1,8)
        GUISetState
                While 1
                $msg = GUIGetMsg()
                Select
                        Case $msg = $GUI_EVENT_CLOSE
                           Exit
                        Case $msg = $GUI_Button_Home
                                $oIE.navigate("\\172.21.3.8")
                        Case $msg = $GUI_Button_Back
                        $oIE.GoBack
                        Case $msg = $GUI_Button_Forward
                                $oIE.GoForward
                EndSelect
        WEnd

一个简单的访问文件共享程序,但是一打开的时候点击“后退”或者是“前进”,都会提示错误然后退出程序的!求解决!
发表于 2012-11-30 14:57:43 | 显示全部楼层
回复 7# chamlien

代码是拼凑别人的吧??你试下复制~~运行下
根本运行不了,估计你也没有理解代码的意思~~
请再检查下代码~
发表于 2012-11-30 16:56:38 | 显示全部楼层
回复 7# chamlien


    同意楼上的
 楼主| 发表于 2012-11-30 20:42:28 | 显示全部楼层
回复 9# annybaby

呃,你们也有点抠门了,去掉GuiSetState这一行,程序就行了,我在复制代码的时候出了点小错误。
发表于 2012-11-30 22:17:28 | 显示全部楼层
回复 10# chamlien

可能你的AU非常特别,那请教下
GUISetState(-1,8)
作何解??
可以显示??


虽然 #include <GUIConstantsEx.au3> 也可以不用,直接
Case $msg = $GUI_EVENT_CLOSE
改成
Case $msg = -3
就可以


#include <WindowsConstants.au3>
#include <IE.au3>
有何用??
代码哪里有用到了??
指出你代码的问题了,不承认,反而怪我们~~

PS:修改后可以显示,前进后退也没有错误~~
估计是你的版本问题,建议试一下其它版本~~
发表于 2012-11-30 23:26:06 | 显示全部楼层
回复 10# chamlien
试了下,点击不会出错哦`

    #NoTrayIcon
    
    Dim $oIE, $GUIActiveX, $GUI_Button_Back, $GUI_Button_Forward
    Dim $GUI_Button_Home, $msg ,$GUI_EVENT_CLOSE=-3
         
    $oIE = ObjCreate("Shell.Explorer.2")
         
         GUICreate("文件共享测试版", 890, 600)
                 GUISetBkColor(0x00E0FFFF)
         $GUIActiveX = GUICtrlCreateObj ($oIE, -1, 50, 890, 600)
         $GUI_Button_Back = GUICtrlCreateButton("后退", 53, 8, 70, 28)
         $GUI_Button_Forward = GUICtrlCreateButton("前进", 148, 8, 70, 28)
         $GUI_Button_Home = GUICtrlCreateButton("主页", 246, 8, 70, 28)
;~                          MsgBox(64,"温馨提示", "如果要求输入用户名的话呢"& @CRLF & @CRLF &"输入administrator按回车键试试吧")
         $oIE.navigate("\\127.0.0.1")
             GUISetState(1)
;~          GUISetState
                 While 1
                 $msg = GUIGetMsg()
                 Select
                         Case $msg = $GUI_EVENT_CLOSE
                            Exit
                         Case $msg = $GUI_Button_Home
                                 $oIE.navigate("\\127.0.0.1")
                         Case $msg = $GUI_Button_Back
                         $oIE.GoBack
                         Case $msg = $GUI_Button_Forward
                                 $oIE.GoForward
                 EndSelect
         WEnd

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2012-11-30 23:36:00 | 显示全部楼层
回复 12# annybaby

大哥,你用的是哪个版本的au呢?想学习一下,我用的是3.8的,老是不行呢,一点后退或者前进程序就出错了
发表于 2012-12-1 00:06:22 | 显示全部楼层
回复 13# chamlien

论坛下的3.3.9.4~~
我4楼都跟你说了要先确认下是不是版本问题啦`~~
 楼主| 发表于 2012-12-1 00:38:29 | 显示全部楼层
回复 14# annybaby
学习了大哥,果然是版本问题,困扰我好些日子了!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-18 09:43 , Processed in 0.082259 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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