Что нового

Вставка html в _IECreateEmbedded

Redline

AutoIT Гуру
Сообщения
506
Репутация
375
С новым годом! :D

Не получается вставить html-код в объект _IECreateEmbedded - SciTE выдает ошибку [Error from function _IEDocInsertHTML, $_IEStatus_InvalidObjectType (Expected document element)], в чем может быть причина? :-\

Код:
#include <GUIConstants.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

$oIE = _IECreateEmbedded ()
GUICreate("Embedded control Test", 640, 580, -1, -1, $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
GUICtrlCreateObj($oIE, 10, 40, 600, 360)
$GUI_Button = GUICtrlCreateButton("PUSH!", 10, 420, 100, 30)

GUISetState()

_IENavigate($oIE, 'about:blank')
;~ _IELoadWait($oIE)

While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = -3
            ExitLoop
        Case $msg = $GUI_Button
            $s_string = "<center> TEST </center>"
			_IEDocInsertHTML($oIE, $s_string)
;~ 			_IEAction ($oIE, "refresh")
    EndSelect
WEnd
 

snoitaleR

AutoIT Гуру
Сообщения
855
Репутация
223
Redline
Я работаю без SCITE, у меня указанный скрипт не выдает ошибку, но и не вставляет текст...


Добавлено:
Сообщение автоматически объединено:

Redline
Вот этот пример c оффсайта, немного модернизированный под твой случай, работает... :smile:

Код:
#include <GUIConstants.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

$oIE = _IECreateEmbedded ()
GUICreate("Embedded control Test", 640, 580, -1, -1, $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
GUICtrlCreateObj($oIE, 10, 40, 600, 360)
_IENavigate($oIE, 'about:blank')
$oBody = _IETagNameGetCollection($oIE, "body", 0)

$GUI_Button = GUICtrlCreateButton("PUSH!", 10, 420, 100, 30)

GUISetState()


;~ _IELoadWait($oIE)

While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = -3
            ExitLoop
        Case $msg = $GUI_Button
            $s_string = "<center> TEST </center>"
            _IEDocInsertHTML($oBody, $s_string)
;~          _IEAction ($oIE, "refresh")
    EndSelect
WEnd
 
Автор
Redline

Redline

AutoIT Гуру
Сообщения
506
Репутация
375
snoitaleR сказал(а):
Вот этот пример c оффсайта, немного модернизированный под твой случай, работает... :smile:

Спасибо :smile:
я сам накопал почти такой же пример, но твой более правильный 8)

Код:
#include <GUIConstants.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

$oIE = _IECreateEmbedded ()
GUICreate("Embedded control Test", 640, 580, -1, -1, $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
GUICtrlCreateObj($oIE, 10, 40, 600, 360)
$GUI_Button = GUICtrlCreateButton("PUSH!", 10, 420, 100, 30)

GUISetState()

_IENavigate($oIE, "about:blank")
;~ _IELoadWait($oIE)

While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = -3
            ExitLoop
        Case $msg = $GUI_Button
			$oBody = _IETagNameGetCollection($oIE, "body", 0)
            $s_string = "<center> TEST </center>"
            _IEDocInsertHTML($oBody, $s_string)
;~          _IEAction ($oIE, "refresh")
    EndSelect
WEnd
 
Верх