あ、それからVB.NETのWebBrowserのページにイベントハンドラー関数の書き方についてメモしたんだった。
WebBrowserのサンプルをネットで見ていると、イベントのハンドリングの書き方が違う。
VB2005はクラスが全然違うから違うとしても、ActiveX(COM)のを使っていても違うから不思議だったんだけど、謎が解けた。
VB6.0では、「変数名_イベント名」という名前で関数を書けば、それがイベントハンドラーになるらしい。
VB.NET2003では、変数宣言にWithEventsを付けて、関数定義で「Handles 変数名.イベント名」という指定を付ける。(関数名はどうでもいいはずなのだが、慣例からか、VB6.0と同じ名前を付けているサンプルが多くて紛らわしい)
他のプログラミング言語から見れば、関数名の命名によって動作が特殊になるなんて想像できないから、後者の方がまだ分かり易いなー。
一番しっくり来るのは、イベントハンドラーを登録しているとしか見えない「AddHandler」命令を使うことだけど。分かってみれば、Handlesの方が便利ですな(笑)
※コメント投稿者のブログIDはブログ作成者のみに通知されます