_IEFrameGetCollection
Returns a collection object containing the frames in a FrameSet or the iFrames on a normal page or a single Frame or iFrame by index.
#include <IE.au3>
_IEFrameGetCollection(ByRef $o_object [, $i_index = -1])
Параметры
$o_object | Переменная объекта InternetExplorer.Application, объекта Окна или Фрейма (области) |
$i_index |
[необязательный] specifies whether to return a collection or indexed instance 0 or positive integer returns an indexed instance -1 = (по умолчанию) returns a collection |
Возвращаемое значение
Успех: | Возвращает an object variable containing the Frames collection, @extended = Frame count |
Ошибка: | Возвращает 0 и устанавливает @error |
@error: | 0 ($_IEStatus_Success) = Нет ошибок |
3 ($_IEStatus_InvalidDataType) = Неверный тип данных | |
5 ($_IEStatus_InvalidValue) = Неверное значение | |
7 ($_IEStatus_NoMatch) = Нет совпадений | |
@extended: | Содержит номер неверного параметра |
Примечания
Although MSDN documents the return value for this function as a collection object, it cannot be looped through with a For...Next loop like a standard collection object. You must instead step through the collection by index - see example.См. также
_IEIsFrameSet, _IEFrameGetObjByNameПример
; *******************************************************
; Пример 1 - Open frameset example, get collection of frames
; and loop through them displaying their source URL's
; *******************************************************
#include <IE.au3>
$oIE = _IE_Example ("frameset")
$oFrames = _IEFrameGetCollection ($oIE)
$iNumFrames = @extended
For $i = 0 to ($iNumFrames - 1)
$oFrame = _IEFrameGetCollection ($oIE, $i)
MsgBox(4096, "Frame Info", _IEPropertyGet ($oFrame, "locationurl"))
Next