- - PR -
TextBoxにデータを入力後、発生するイベントは?
«前のページへ
1|2|3|4
投稿者 | 投稿内容 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-11-14 10:34
ご説明ありがとうございました。 経緯はわかりました。
だからこそ Validating イベントや Leave イベントに処理を実装すれば良いと書きました。
マウス クリックの問題も解決できたのでしょうか?
フォームで [Enter] キーが押された時にフォーカスを遷移させる [wankuma.com] _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||||||
|
投稿日時: 2007-11-14 19:42
ちょっとした発想の転換やきっかけと言った事で、実は簡単な事だったんだと言う事も多いと思うんだけど。
イベントの流れって言うものを、眺めてみた事はありますか? 全ての処理を1箇所でやる必要は無い。 しかし、全ての処理は1箇所に集約される事も有る。 今回の問題でいえば、 エンターキー押下後の処理を全て1箇所でやる必要は無い訳で。 それでいて、実処理部分については、1箇所に集めたいと言う事が考えを硬直させていると思う。 今、やろうとしている処理のどこまでが同時に行われなければいけない事なのかを1度整理してみると、意外と簡単な話だと思います。 KeyDownイベント時 押されたのがEnterキーだった場合、次のコントロールにフォーカスを移動させて、 それ以外の場合特に何もしない。 Validatingイベント或いはLeaveイベント時 実際に行いたい処理を行う。 イベントの流れとしては、 Enterキー押下 → KeyDownイベントにより次のコントロールにフォーカスが移動 Tabキー押下 → KeyDownイベントでは何も起きないがTabによる基本動作によって次のコンとロールにフォーカスが移動 マウスにて別のコントロールをクリック → クリックされたコントロールにフォーカスが移動 この3つの動作ではいずれも、フォーカス移動関係のイベントが発生します。 このフォーカス移動関係のイベントには Validatingイベント(コントロール検証処理) Leaveイベント(フォーカス喪失処理) が含まれますので、適切な場所に適切な処理を配置するだけで問題は片付くと思います。 一度のイベントで全てを処理しようと考えてしまうから、行き止まりにハマってしまうのです。 処理を一箇所にまとめる努力も大切かもしれませんが、それ以上に適切な場所に適切な処理を配置すると言う事はそれ以上に大事です。 もし、適切な場所に配置する事によって同じ処理が複数箇所に分散するのであれば、関数を作成する事によって処理を集約すれば良い訳です | ||||||||||||||||
|
投稿日時: 2007-11-14 21:52
だんじりさんのこれまでの投稿を見ていると、
* 使用している道具に対する理解不足 * 開発しようとしているアプリケーションの仕様に対する理解不足 を感じます。後者は、説明が下手というだけのことなのかもしれませんが。 前にも勧めたと思いますが、まずはチームメイトに相談してみてはいかがでしょうか。 ここで相談するのは、必ずしも答えを得るためではありません。 問題を共有し、問題を整理することが目的です。 また、やはり前にも勧めたと思いますが、インテリセンスに出てくる説明をアテにしたり、やってみて発生した現象をそのまま信じるのではなく、リファレンスをしっかり読んで、動作原理を理解して欲しいと思います。 原理がわかると、如何様にもアレンジできます。
名指しでの質問には答えかねます。 その後、私が書かれている質問を見ると、確信がありますか? 私の都合を考えて下さっていますか? 「誰それさん、お願いします」と書くことで、他の人が回答しにくくなると思いませんか? また、「Enter キーでフォーカスを移動」という質問は、おおよそ半期ごとに1回はあります。右上の「検索」リンクより、「enter フォーカス 移動」で検索してみても、答えは見つかります。3ページ目くらいにありました。 自分の質問だけを見るのではなく、他の人の質問にも目を通すことを勧めます。 * 他の人も、自分と同じような問題を持っている場合がある。 * 他の人が聞いたことと同じことで、自分が悩むことになる、場合がある。 * 他の人の書き方、それへの返答から、より回答を得やすい書き方を学習する。 こういった効果があります。 | ||||||||||||||||
|
投稿日時: 2007-11-15 13:47
じゃんぬねっとさん、RUNさん、Jittaさん、ありがとうございます。
少し留守していましてお礼が遅くなりました。 じゃんぬねっとさんのサイト(C# と VB.NET のサンプル)拝見しましました。 私のスニペットに取込み、活用させていただきます。 皆様からも色々なご指導ありがとうございました。 Jittaさんも大阪での講師、がんばってください。 |
«前のページへ
1|2|3|4