C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: かなキーとCapsLockキーのイベント


(過去ログ 117 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■68983 / inTopicNo.1)  かなキーとCapsLockキーのイベント
  
□投稿者/ まるまる (5回)-(2013/11/27(Wed) 09:35:02)

分類:[.NET 全般] 

かなキーとCapsLockキーのキーを押したか離したかの判定をしたいと思っています。
しかし、この2つのキーはキーを押した瞬間に押したイベントと上げたイベントが走り
キーを離したときはイベントが走りません。

かなキーとCapsLockキーを離したイベントを検知したいのですが、どのような方法で検知すればよいでしょうか。

言語はVB.netかC#を使う予定です。

引用返信 編集キー/
■68998 / inTopicNo.2)  Re[1]: かなキーとCapsLockキーのイベント
□投稿者/ ムドー (7回)-(2013/11/28(Thu) 10:07:09)
No68983 (まるまる さん) に返信
> かなキーとCapsLockキーのキーを押したか離したかの判定をしたいと思っています。
> しかし、この2つのキーはキーを押した瞬間に押したイベントと上げたイベントが走り
> キーを離したときはイベントが走りません。

TextBoxのKeyDown、KeyPress、KeyUpでかなキーとCapsLockキーのイベント発生の流れを追ってみましたが、
かなキーの場合、「KeyDown→KeyUp」で発生し、押し続けた状態でもKeyUpが発生してます。

一方CapsLockはボタン押下奇数回目「KeyUp→KeyDown」、偶数回目「KeyDown」というふうに発生し、押し続けた状態でも
奇数回目と偶数回目の流れでイベントが起きています。
(個人的には上記の動作が起きる理由が分からないのですが・・・)


> かなキーとCapsLockキーを離したイベントを検知したいのですが、どのような方法で検知すればよいでしょうか。
まるまるさんは冒頭で、「かなキーとCapsLockキーのキーを押したか離したかの判定をしたい」とおっしゃっておりますが、
押した時のイベント、離した時のイベントをそれぞれ発生させたいのでしょうか?
そうでなければ、キーボード入力を監視し「かなキーとCapsLockキーならTRUEそれ以外はFALSE」みたいな感じの
判定を行うことによって解決できるかと思いますが・・・

曖昧な回答で申し訳ありません。
引用返信 編集キー/
■69005 / inTopicNo.3)  Re[1]: かなキーとCapsLockキーのイベント
□投稿者/ shu (436回)-(2013/11/28(Thu) 11:18:10)
No68983 (まるまる さん) に返信

試していませんがそういう動きをしてしまうのなら多分無理だと思います。
キーボードドライバかキーボード自体の処理を変更する必要性がある気がします。
引用返信 編集キー/
■69008 / inTopicNo.4)  Re[2]: かなキーとCapsLockキーのイベント
□投稿者/ まるまる (6回)-(2013/11/28(Thu) 13:37:50)
ご返信ありがとございます。
やはりキーを上げたときのイベント検知は無理そうですね。

仮想的に、かなキーやタブキーを上げた(離した)と仮定して処理を作りこもうと思います。
ありがとうございました。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -