■69012 / inTopicNo.1) |
CapsLock押下時のKeyイベント順序について |
□投稿者/ ムドー (8回)-(2013/11/28(Thu) 14:25:09)
|
分類:[C#]
・かなキーとCapsLockキーのイベント
http://bbs.wankuma.com/index.cgi?mode=al2&namber=68983
上記のトピックにて回答(No68998)していたムドーです。
該当レスにも記載しましたが、CapsLockを押した時のKeyDown、KeyUpイベントが下記のように発生しました。
・ボタン押下奇数回目「KeyUp→KeyDown」、偶数回目「KeyDown」
ちょっと気になって調べてみたのですが情報が見受けられなかったのでトピックを立てました。
これってどういうことなんですかね?ざっくばらんにご意見お聞かせいただければなと思います。
ちなみに下記のような構成でプログラムを作成し、実行しました。
----------------------------
OS:Windows8
開発ソフト:Visual Studio Express 2012 for Windows Desktop
言語:C#
画面Form1にTextBox(textBox1)、0と表示されているLabel(keydownCnt、keyupCnt)を配置し、
textBox1にフォーカスを当てた状態でCapsLockを押す。
その際のイベント(textBox1_KeyDown、textBox1_KeyUp)でLabelのカウントを増やす。
-----ソース(一部抜粋)------
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
int cnt = Int32.Parse(this.keydownCnt.Text.ToString());
cnt++;
this.keydownCnt.Text = cnt.ToString();
}
private void textBox1_KeyUp(object sender, KeyEventArgs e)
{
int cnt = Int32.Parse(this.keyupCnt.Text.ToString());
cnt++;
this.keyupCnt.Text = cnt.ToString();
}
|
|