タイトル | : Re^3: 初めまして |
記事No | : 4514 |
投稿日 | : 2006/11/09(Thu) 09:52 |
投稿者 | : 魔界の仮面弁士 |
> AddHandler ctrl.GotFocus, AddressOf Form.UserControlGotFocus > でUserControlGotFocusがメンバーではありません。とエラーになってしまいます。 そのメンバを持つ型にキャストするか、もしくは、そのメンバを持つ型のみを 受け取れるように、先の回答のような方法を採用するか…という事になるかと。 もし、UserControlGotFocus メソッドの内容が、各フォームで共通なのであれば、 そのイベントハンドラを各Formで管理するのではなく、管理用のクラスもしくはモジュールを 用意しておき、そちらに UserControlGotFocus 相当のメソッドを実装するのも手かと。
> 質問ばかりで恐縮ですが、引数で AddressOf 〜 の〜の部分を引き渡すのは可能でしょうか? 『デリゲート』について調べてみてください。
Public Sub SetCtrl(ByVal form As Form, ByVal gotFocusHandler As EventHandler) For Each ctrl As Control In form.Controls AddHandler ctrl.GotFocus, gotFocusHandler Next End Sub
|