カスタムクラスは初めてです。「ゲーム」というクラスがあります。このクラスには、「pBox」と呼ばれるダイナミック ピクチャ ボックスを作成する「addGame()」というメソッドがあります。コントロールを作成した後、次のようにしてクリック イベントを登録します。
AddHandler pBox.Click, AddressOf Me.launchGame
そして、ここに launchGame があります:
Public Sub launchGame()
MsgBox(Me.name)
End Sub
問題は、"Me.name" が、私がクリックした名前ではなく、常に最後に追加されたインスタンス名であることです。
提案に基づいて、私もこれを試しました:
Public Sub launchGame(ByVal sender As Object)
MsgBox(sender.name)
End Sub
しかし今、「AddHandler pBox.Click, AddressOf Me.launchGame」と言う
メソッド 'Public Sub launchGame(sender As Object)' には、デリゲート 'Delegate Sub EventHandler(sender As Object, e As System.EventArgs)' と互換性のある署名がありません
そして、「AddHandler pBox.Click, AddressOf Me.launchGame(Me)」と言う
AddressOf オペランドは、括弧のないメソッドの名前でなければなりません
Public Sub launchGame(ByVal sender As Object, ByVal sender as EventArgs)
MsgBox(sender.name)
End Sub
エラーはありませんが、msgBox は空白です。