DOBON.NETプログラミング掲示板過去ログ
RadioButtonのChackedChangedイベント発生時のフォーカスセット遅延について
題名: RadioButtonのChackedChangedイベント発生時のフォーカスセット遅延について
著者: saya
日時: 2004/12/01 15:34:42
ID: 7751
この記事の返信元:
(なし)
この記事への返信:
[7778]
Re[1]: RadioButtonのChackedChangedイベント発生時のフォーカスセット遅延について
えムナウ
2004/12/01 21:24:08
ツリーを表示
環境/言語:[C#、WindowsXP、NET Frameworkのバージョン1.1]
分類:[.NET]
こんにちは。
下記の問題解決方法が見つからなくて悩んでいます。
ご教授下さい。
操作手順
@RadioButtonを2つ並べて表示する。
※RadioButtonのChackedChangedイベントでThread.Sleep(100*10)という処理を行う。
Aラジオボタンを選択し、キーボードの方向キーでラジオボタンのチェックを変更する。
問題点
マウスクリックでラジオボタンのチェックを変更した場合、
フォーカスがセットされるタイミングがチェックを付けたタイミングとなるが、
キーボードの方向キーでラジオボタンのチェックを変更した場合、
手順※の処理を実行してからフォーカスがセットされる為にラジオボタンに
フォーカスがセットされるタイミングが遅れる。
ラジオボタンを独自コントロールにし、IsInputKey(Keys keyData)メソッドをオーバーライドして方向キーが押下されたかを
判別したりするなどいろいろ試してみたのですが
なかなか良い解決策が見つかりませんでした。
やっぱり、発生するイベントのタイミングを制御するのは不可能なのでしょうか?
宜しくお願いします。
題名: Re[1]: RadioButtonのChackedChangedイベント発生時のフォーカスセット遅延について
著者: えムナウ
URL:
http://www.geocities.jp/mnow/
日時: 2004/12/01 21:24:08
ID: 7778
この記事の返信元:
[7751]
RadioButtonのChackedChangedイベント発生時のフォーカスセット遅延について
saya
2004/12/01 15:34:42
この記事への返信:
[7794]
Re[2]: RadioButtonのChackedChangedイベント発生時のフォーカスセット遅延について
saya
2004/12/02 15:21:03
[解決]
ツリーを表示
>やっぱり、発生するイベントのタイミングを制御するのは不可能なのでしょうか?
Application.DoEvents メソッド を行った時点でメッセージ キューに現在ある Windows メッセージをすべて処理します。
Thread.Sleep(100*10) の前に、Application.DoEvents メソッド を呼んでやったらどうでしょうか?
題名: Re[2]: RadioButtonのChackedChangedイベント発生時のフォーカスセット遅延について
著者: saya
日時: 2004/12/02 15:21:03
ID: 7794
この記事の返信元:
[7778]
Re[1]: RadioButtonのChackedChangedイベント発生時のフォーカスセット遅延について
えムナウ
2004/12/01 21:24:08
この記事への返信:
(なし)
ツリーを表示
■No7778に返信(えムナウさんの記事)
> >やっぱり、発生するイベントのタイミングを制御するのは不可能なのでしょうか?
> Application.DoEvents メソッド を行った時点でメッセージ キューに現在ある Windows メッセージをすべて処理します。
> Thread.Sleep(100*10) の前に、Application.DoEvents メソッド を呼んでやったらどうでしょうか?
>
えムナウさん、ご返答ありがとうございます!
Application.DoEventsメソッドでも試してみたのですが、
現象は回避されませんでした。
今日もいろいろ試してみたのですが、これは仕様であると割り切るしか
ないかな〜と思いはじめてきました。
どうもありがとうございました。
解決済み!
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[.NET]
こんにちは。
下記の問題解決方法が見つからなくて悩んでいます。
ご教授下さい。
操作手順
@RadioButtonを2つ並べて表示する。
※RadioButtonのChackedChangedイベントでThread.Sleep(100*10)という処理を行う。
Aラジオボタンを選択し、キーボードの方向キーでラジオボタンのチェックを変更する。
問題点
マウスクリックでラジオボタンのチェックを変更した場合、
フォーカスがセットされるタイミングがチェックを付けたタイミングとなるが、
キーボードの方向キーでラジオボタンのチェックを変更した場合、
手順※の処理を実行してからフォーカスがセットされる為にラジオボタンに
フォーカスがセットされるタイミングが遅れる。
ラジオボタンを独自コントロールにし、IsInputKey(Keys keyData)メソッドをオーバーライドして方向キーが押下されたかを
判別したりするなどいろいろ試してみたのですが
なかなか良い解決策が見つかりませんでした。
やっぱり、発生するイベントのタイミングを制御するのは不可能なのでしょうか?
宜しくお願いします。