フレームセット内のフレーム、通常のページ上のアイフレームを格納したコレクションオブジェクト、またはインデックスと対応するフレーム、アイフレームを返します。
#include <IE.au3>
_IEFrameGetCollection ( ByRef $o_object [, $i_index = -1] )
パラメータ
$o_object | InternetExplorer.Applicationのオブジェクト変数、ウィンドウまたはフレームオブジェクト |
$i_index | [オプション]コレクションを返すか、インデックスの要素を返すかを指定します 0 または正の整数の場合、そのインデックスのインスタンスを返します -1 = (デフォルト) コレクションを返します |
返し値
成功: | フレームのコレクションを格納したオブジェクト変数を返します。@EXTENDED = フレームの数 |
失敗: | 0を返し@ERRORを設定します |
@Error: | 0 ($_IEStatus_Success) = 正常終了 |
3 ($_IEStatus_InvalidDataType) = 無効なデータ型 | |
5 ($_IEStatus_InvalidValue) = 無効な値 | |
7 ($_IEStatus_NoMatch) = 一致するものがありません | |
@Extended: | 無効なパラメータの番号が格納されています |
注意
MSDNドキュメントによるとこの関数の返し値はコレクションオブジェクトですが、標準のコレクションオブジェクトのようにFor...Nextループを使ってループすることができません。代わりにインデックスを使ってコレクションを展開する必要があります - サンプルを参照してください。
関連
_IEIsFrameSet, _IEFrameGetObjByName
例
; *******************************************************
; 例 1 - フレームセットのサンプルを開き、フレームのコレクションを取得。
; そのソースのURLを表示しながらループ
; *******************************************************
;
#include <IE.au3>
$oIE = _IE_Example ("frameset")
$oFrames = _IEFrameGetCollection ($oIE)
$iNumFrames = @extended
For $i = 0 to ($iNumFrames - 1)
$oFrame = _IEFrameGetCollection ($oIE, $i)
MsgBox(0, "Frame Info", _IEPropertyGet ($oFrame, "locationurl"))
Next