掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
KeyUpイベントが効かないようにするには (ID:91663)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
なんで e.KeyCode の Select 文で Keys 列挙体を使わないのだろう(疲) …あと、こちらでは再現しません。デバッグした限りでは >しかし、番号入力時のリターンを検知して再度このルーチンに入って >リターンキーの処理をしてしまい、番号入力後の処理が出来ないでいます。 番号入力後の処理はちゃんと処理されてて、その後リターンでイベントが 走ってるようですが???ちゃんと動きを把握してますか???そっちの 問題を言っているなら質問文が間違ってますよ?。質問どおり >番号入力後の処理が出来ないでいます。 なら先の御二方と同じくフラグで解決できると思います。 後者の問題なら InputBox 使わずに別フォームで入力させれば解決しそうな気がしますが。 >早速フラグの処理で試してみましたが、リターンキーの処理に移ることは >なくなったのですが、ESCキーの処理の残りの処理をやってくれません。 フラグの場所が悪いのでは? 出力結果を教えて下さい。 [VB.NET] Private Const LinMax As Integer = 1 Private K_code As Keys Private mEventMusi As Boolean Private Sub Form_KeyUp(ByVal sender As Object, _ ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyUp Dim i, a, F_tuika, F_wari As Integer Dim result As String If Me.mEventMusi = True Then Debug.WriteLine("無視") Exit Sub End If If F_wari = 0 Then Select Case e.KeyCode Case Keys.Enter 'RETキー K_code = Keys.Enter Debug.WriteLine("RET") Case Keys.Tab 'TABキー K_code = Keys.Tab Debug.WriteLine("TAB") Case Keys.Escape 'ESCキー Debug.WriteLine("ESC") Me.mEventMusi = True F_wari = 1 result = InputBox("№を入力してください" _ , "№入力", "No") '№の入力 For i = 0 To LinMax 'データを入力した番号で検索 Debug.WriteLine("検索" & i.ToString) Next '検索で見つからなかったのでデータ追加 F_wari = 0 Me.mEventMusi = False Case Keys.F2 'F2キー(終了) K_code = Keys.F2 End Select End If End Sub
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.