UDF > IE >


_IECreateEmbedded

Cr�e un objet Webbrowser adapt� � l'int�gration dans une GUI AutoIt avec GUICtrlCreateObj()

#include <IE.au3>
_IECreateEmbedded ( )

Valeur de retour

Succ�s: Retourne une r�f�rence � un objet Webbrowser.
�chec: D�finit @error <> 0.
@error: 1 ($_IEStatus_GeneralError) - Erreur g�n�rale

Remarques

Aucune action ne peut �tre effectu�e sur cet objet tant qu'il n'a pas �t� int�gr� dans une application parent (par exemple, vous ne pouvez pas effectuer une _IENavigate().
En raison de cette restriction, le navigateur n'est pas automatiquement connet� � 'about:blank' comme un navigateur cr�� avec _IECreate().
Vous devez donc utiliser _IENavigate() pour connecter ce navigateur � 'about:blank' apr�s qu'il ait �t� int�gr� dans une application parent et avant de tenter des op�rations sur un document ayant �t� charg� (par exemple _IEBodyWriteHTML()).

Il y a plusieurs propri�t�s li�es � un objet InternetExplorer (par exemple retourn�es par _IECreate()) qui ne s'appliquent pas � cet objet.
Il s'agit notamment du statut du texte, de la barre d'adresse et d'autres qui peuvent exister pour un navigateur, mais qui n'existent pas pour un contr�le int�gr�.

Vous pouvez avoir des probl�mes de visibilit� d'objet sauf si vous utilisez le style $WS_CLIPCHILDREN de Windows dans GUICreate().

_IEQuit() ne peut pas �tre utilis�e avec cet objet. L'objet sera d�truit quand la GUI parente sera d�truite.

En relation

_IEAttach, _IECreate, _IENavigate

Exemple

; Intercepte des erreurs COM comme 'Back' et 'Forward' 
; en dehors des limites historiques qui n'interrompent pas le script
; (attend les erreurs COM pour les envoyer � la console)

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

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

Global $g_idError_Message = GUICtrlCreateLabel("", 100, 500, 500, 30)
GUICtrlSetColor(-1, 0xff0000)

GUISetState(@SW_SHOW) ; Affiche la GUI

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

; Attend que l'utilisateur ferme la fen�tre
Local $iMsg = GUIGetMsg()

While $iMsg <> $GUI_EVENT_CLOSE
    Select
        Case $iMsg = $idButton_Home
            _IENavigate($oIE, "http://www.autoitscript.com")
            _IEAction($oIE, "stop")
            _IEAction($oIE, "back")
            CheckError("Home", @error, @extended)
        Case $iMsg = $idButton_Back
            _IEAction($oIE, "back")
            CheckError("Back", @error, @extended)
        Case $iMsg = $idButton_Forward
            _IEAction($oIE, "forward")
            CheckError("Forward", @error, @extended)
        Case $iMsg = $idButton_Stop
            _IEAction($oIE, "stop")
            CheckError("Stop", @error, @extended)
    EndSelect
    $iMsg = GUIGetMsg()
WEnd

GUIDelete()
Exit

Func CheckError($sMsg, $iError, $iExtended)
    If $iError <> 0 Then
        $sMsg = "Erreur d'utilisation " & $sMsg & " bouton (" & $iExtended & ")"
    Else
        $sMsg = ""
    EndIf
    GUICtrlSetData($g_idError_Message, $sMsg)
EndFunc   ;==>CheckError