コールバック関数を実行するのに、わざわざイベントを使う利点は何でしょうか。
下記のコードでは、どちらでも大して変わらないように見えますが・・・
Module modMain
Sub Main()
Dim myRaise As clsMyRaiseEvent = New clsMyRaiseEvent
'イベントを使った使用法
AddHandler myRaise.MyEvent, New clsMyRaiseEvent.dlgMyEvent(AddressOf MyCallBack)
myRaise.Test1()
'関数ポインタ的な使用法
myRaise.callback = New clsMyRaiseEvent.dlgMyEvent(AddressOf MyCallBack)
myRaise.Test2()
Console.ReadLine()
End Sub
'コールバック関数
Private Sub MyCallBack(ByVal aEx As Exception)
Console.WriteLine("Called")
End Sub
End Module
Public Class clsMyRaiseEvent
Public Delegate Sub dlgMyEvent(ByVal aEx As Exception)
Public Event MyEvent As dlgMyEvent 'デリゲート型のイベント
Public callback As dlgMyEvent
Public Sub Test1()
RaiseEvent MyEvent(New Exception)
End Sub
Public Sub Test2()
callback(New Exception)
End Sub
End Class
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Visual Basic(VBA) 標準モジュール Public mOnTime As Date Sub sample() '実行プロシ 1 2023/02/22 15:44
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) マクロについて教えてください。 1 2023/06/06 00:57
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CloseとDisposeの違い
-
クラスの実体を一つにする方法
-
VBAでCOPYを繰り返すと、処理が...
-
「ご処理進めて頂きますようお...
-
Excelシート上のマクロを登録し...
-
「PC Helpsoft Driver Updated...
-
エクセルで、日付を入力すると...
-
サブフォームのイベント取得
-
UWSC 画像認識で条件分岐
-
switch の範囲指定
-
スマホF-51Bに緊急時情報画面で...
-
VBA シート毎に画像挿入
-
csvに保存しているデータをURL...
-
DAOでSQLServerに接続し、LeftJ...
-
VBA エンターキーでイベントに...
-
お家デートをしててハグを長い...
-
UWSCを使って画像リンクをクリ...
-
uwscの画像認識に失敗します。
-
UWSC「画像が無い場合」
-
エクセル2000VBAでオブジェクト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CloseとDisposeの違い
-
C# 超初心者です。 this.Refres...
-
[C#]FormクラスのShowメソッド...
-
DLL内のイベントをハンドリング
-
[swift]動的なキーを持つJSONの...
-
C#のインスタンスを参照渡ししたい
-
Try~Catch、Finallyについて。
-
objective-C(Xcode)に関して...
-
Graphicsプロパティ
-
OCXのメソッドの引数に文字列を...
-
コールバックでイベントを使う...
-
vb.net フォームアプリケーシ...
-
フィールド(メンバ変数)のプリ...
-
objective-cにはCのような関数...
-
VB.NET スプラッシュスクリー...
-
クラスの実体を一つにする方法
-
「ご処理進めて頂きますようお...
-
エクセルで、日付を入力すると...
-
Excelシート上のマクロを登録し...
-
エクセルVBAで、MsgBox やInput...
おすすめ情報