- - PR -
エンターキーによるフォーカス移動について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-10-23 15:05
エンターキーを押すことによりフォーカスを移動させようと考え、
KeyPressイベントで#13を拾ってTABコードに置き換えようと思ったのですが、 C#でのPostMessageの記述の仕方がわかりません.... 又、別の方法でもなにか良い方法があればご教授願えますか。 よろしくお願いします。 |
|
投稿日時: 2003-10-23 16:15
Windowsアプリケーションの話でしょうか?
そうなら、コントロールをArrayListなどで管理しておいて エンターキーのイベントを拾ったら、 次のコントロールにフォーカスを設定すればいいのではないでしょか。 |
|
投稿日時: 2003-10-23 16:48
返答ありがとうございます。
早速その方法で試してみます。 |
|
投稿日時: 2003-10-23 17:04
ProcessTabKey メソッドを使うと次に使用できるコントロールをアクティブにできます。
・ContainerControl クラス(Form のベースクラス)の ProcessTabKey メソッド http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemwindowsformscontainercontrolclassprocesstabkeytopic.asp |
|
投稿日時: 2003-10-23 17:13
私もその後、少し考えていたんですが、フォームのキープレスイベントで
if (e.KeyChar == (char)13) { ActiveForm.SelectNextControl(ActiveControl,true,true,true,true); ActiveControl.Focus(); } ってのを考え付きました。 いろいろなのを試してみて最良なものを使いたいと思います。 みなさんありがとうございました。 |
|
投稿日時: 2003-10-23 17:18
試してみたんですが、
if (e.KeyChar == (char)13) { ProcessTabKey(true); } これがベストのような気がします。 burton999さん、架空兎さんありがとうございました。 |
1