browser クラス : LoadCompleted(class,string) メソッド

説明

ハンドラを"LoadCompleted"イベントに割り当てます。

構文

instance.LoadCompleted(class handleClass, string signature)

引数

クラス名前説明
classhandleClassハンドラをメンバとして持つインスタンス。
stringsignatureハンドラのシグネチャ。

返り値

クラス説明
switchハンドラの実行を制御するインスタンス。

サンプルコード

次のクラス定義があるとします。

1:

class handle

2:

open method void LCHandler(dictionary dic)

3:

browser sender = dic.Sender;

4:

switch sw = dic.Switch;

5:

bool succ = dic.IsSuccess

6:

string wes = dic.WebErrorStatus;

7:

endmethod

8:

endclass

ハンドラの割り当ては次のとおりです。

1:

browser b; // Main-browser

2:

handle h = new handle();

3:

switch sw = b.LoadCompleted(h,"LCHandler(dictionary)");

注意

"LoadCompleted"イベントはページのロードが完了した時に発生します。


"LoadCompleted"イベントのハンドラは、dictionaryクラスの引数を一つ持つopenメソッドでなければなりません。

つまり、ハンドラのメソッド名が "handlerName"の場合、ハンドラの定義は次のようになります。


open method void handlerName(dictionary dic)

...

endmethod


この場合、第2引数で指定されるハンドラのシグネチャは "handlerName(dictionary)"です。

イベント発生時にハンドラに渡される dictionary は以下の key と value のペアを持ちます。

keyvalue(クラス)value(説明)
Senderbrowserイベントの発生元。
Switchswitchハンドラの割り当てで返される switch と同じインスタンス。
IsSuccessboolページのロードが成功したかどうかを示す値。
WebErrorStatusstringページのロードが失敗した時の理由。

WebErrorStatus は以下の様な文字列を返します。

CannotConnect

CertificateCommonNameIsIncorrect

CertificateExpired

CertificateIsInvalid

CertificateRevoked

ClientCertificateContainsErrors

ConnectionAborted

ConnectionReset

Disconnected

ErrorHttpInvalidServerResponse

HostNameNotResolved

OperationCanceled

RedirectFailed

ServerUnreachable

Timeout

UnexpectedError

Unknown

ロードが成功したときは"Unknown"を返します。


ハンドラは専用のスレッドで実行されます。

参照リンク

無し。

Copyright © Cooker All rights reserved.