函数参考


_IECreateEmbedded

创建一个适合于嵌入AutoIt图形化界面 (GUI)的web浏览器对象,此图形化界面由GuiCtrlCreateObj()生成.

#include <IE.au3>
_IECreateEmbedded ( )

参数

None.

返回值

成功: 返回web浏览器的对象引用
失败: 返回 0 并且设置 @ERROR
@Error: 0 ($_IEStatus_Success) = 无错误
1 ($_IEStatus_GeneralError) = 一般性错误

注意/说明

除非这个对象已被嵌入到父层界面否则无法对此对象执行任何操作(如, 你可以执行一个 _IENavigate). 由于此限制, 在_IECreate创建时浏览器不会自动打开'about:blank'. 因此必须在被内嵌入父应用程序后且在试图进行任何依赖于所加载文件的操作(如_IEBodyWriteHTML)前使用_IENavigate浏览'about:blank'.

有几个IE对象的属性(例如通过_IECreate返回)不能应用到这个对象,包括状态文字,地址栏和其他可以在一个浏览器存在但不能在嵌入控件对象中存在的属性.

除非在GUICreate()中使用$WS_CLIPCHILDREN风格的窗体否则可能会有对象可见的问题.

_IEQuit不能用于此对象.且该对象会随着其父层界面(GUI)关闭而关闭.

相关

GUICreate, GUICtrlCreateObj, _IEAttach, _IECreate, _IENavigate

示例/演示


; *******************************************************
; 示例1 - 获取COM错误以便外部历史集的'Back'及'Forward'不使脚本退出
;    (COM错误将送至控制台)
;
; *******************************************************

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

_IEErrorHandlerRegister()

Local $oIE = _IECreateEmbedded()
GUICreate("Embedded Web control Test", 640, 580, _
        (@DesktopWidth - 640) / 2, (@DesktopHeight - 580) / 2, _
        $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
GUICtrlCreateObj($oIE, 10, 40, 600, 360)
Local $GUI_Button_Back = GUICtrlCreateButton("Back", 10, 420, 100, 30)
Local $GUI_Button_Forward = GUICtrlCreateButton("Forward", 120, 420, 100, 30)
Local $GUI_Button_Home = GUICtrlCreateButton("Home", 230, 420, 100, 30)
Local $GUI_Button_Stop = GUICtrlCreateButton("Stop", 340, 420, 100, 30)

GUISetState() ;显示GUI

_IENavigate($oIE, "http://www.autoitscript.com")

; 等待用户关闭窗口
While 1
    Local $msg = GUIGetMsg()
    Select
        Case $msg = $GUI_EVENT_CLOSE
            ExitLoop
        Case $msg = $GUI_Button_Home
            _IENavigate($oIE, "http://www.autoitscript.com")
        Case $msg = $GUI_Button_Back
            _IEAction($oIE, "back")
        Case $msg = $GUI_Button_Forward
            _IEAction($oIE, "forward")
        Case $msg = $GUI_Button_Stop
            _IEAction($oIE, "stop")
    EndSelect
WEnd

GUIDelete()

Exit