お世話になります。
vb.netにて、コントロール類のイベントが完全に終了した直後に、特定の処理を行う方法を探しています。例えば、フォーム上のButton1のEnterイベント(下記コード)が完全に終了した直後に、ある特定の処理ができればと思います。
'Button1を張り付けたフォーム
Private Sub Button1_Enter(sender As Object, e As EventArgs) Handles Button1.Enter
'(Enterイベントの処理)
End Sub
サイト上にて、Buttonを継承させたButtonExクラスを作成し、Enterイベントが終了してから自作のEnteredイベントを発生するボタンを利用する方法を見つけました(下記コード)。しかし、この方法でも私が望む動作に至らなかったので、ButtonExクラス内のOnEnterイベントが終了してから特定の処理ができればと思います。
'Enterイベント終了後にEnteredイベントを発生させるButtonExクラス
Public Class ButtonEx
Inherits Button
Public Event Entered(sender As Object, e As EventArgs)
Protected Overrides Sub OnEnter(e As EventArgs)
MyBase.OnClick(e) 'ここでButtonExのEnterイベントが発生する。
RaiseEvent Entered(Me, e) 'ここでButtonExのEnteredイベントが発生する。
End Sub
End Class
'ButtonExを張り付けたフォーム
Private Sub ButtonEx1_Entered(sender As Object, e As EventArgs) Handles ButtonEx1.Entered
'(ButtonEx1のEnterイベント終了直後に行いたい処理)
End Sub
1つ思いついたのが、タイマーコントロールを利用する方法です(下記コード)。
'Button1、Timer1を張り付けたフォーム
Private Sub Button1_Enter(sender As Object, e As EventArgs) Handles Button1.Enter
'(Enterイベントの処理)
Timer1.Interval=1
Timer1.Enabled = True 'このとき以外は、Timer1.Enabled = False にする。
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Timer1.Enabled = False
'(Button1のEnterイベント終了直後に行いたい処理)
End Sub
Enterイベントで例を記載しましたが、他のイベント(Validatedイベント等)でも同様のことができる方法を探しています。Timerのイベントを用いた方法よりも良い方法がありましたら、ご教示下さい。
宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) Visual Basic : ImageListの画像がそろったときにメッセージを表示 1 2023/07/20 13:53
- Visual Basic(VBA) 九九の答えの計算 3 2022/12/20 22:13
- その他(Microsoft Office) VBA メール送信済で実行されるはずが、実行されない時があります。 2 2023/02/02 14:05
- Visual Basic(VBA) エクセル VBAについて 2 2022/05/16 16:33
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBSの処理中一旦処理を止めて再...
-
Excel VBA で処理中断(DoEvents...
-
VBSで応答不要のメッセージボッ...
-
メッセージボックスのボタン名変更
-
Excelのワークシートに行を挿入...
-
エクセルVBAでクリップボード内...
-
VBスクリプトで「お待ち下さい...
-
Application.ScreenUpdating=Fa...
-
VBA:IEでサイトを巡回し、デー...
-
thunderbirdのメッセージフィル...
-
VB6 コマンドボタン クリック...
-
DoEvents
-
DirectX環境下での方向キー同時...
-
ボタンが押された事を検知する...
-
MFCのView終了時の終了確認
-
マルチスレッドを実現したい
-
VBA kernel32 の意味
-
結果待ちの関数を強制終了
-
MFCのメニューバーのイベント取得
-
マウスのクリックを無視したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスのボタン名変更
-
VBSの処理中一旦処理を止めて再...
-
VBSで応答不要のメッセージボッ...
-
ACCESS側からEXCELの書式を設定...
-
VBA メッセージボックスを自動...
-
Application.ScreenUpdating=Fa...
-
VBA kernel32 の意味
-
エクセルVBAでクリップボード内...
-
Excelのワークシートに行を挿入...
-
Excel VBA で処理中断(DoEvents...
-
【C#】 あるイベントから別イ...
-
手動かプログラムでの起動かの判断
-
ASP.NETでのメッセージ画面を出...
-
Excel VBA 自動的に閉じるMsgBox
-
シャットダウン時のExcel強制終...
-
VBA、UserFormを前面に出力して...
-
<input type="file">タグで「キ...
-
Excel VBA 実行中に一瞬フリー...
-
「キャンセル」ボタン付きの処...
-
EXCEL VBA「Application.Displa...
おすすめ情報