[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2006/05/11(Thu) 15:56
投稿者名:茶太郎
URL :
タイトル:
フォームのフォーカス
初めて投稿します。VB初心者です。

VB5でフォームを作成しています。
フォーム上にはラベルとボタンのみ配置してあります。
初期表示時やボタンクリック時などにフォーカスが
あたらないようにするにはどのようにしたらよいので
しょうか?
すべてのボタンのTabStopをFalseにしてもフォーカスが
あたってしまいます。
※Tabキーによるフォーカス移動はできないようになりますが。

どなたかご存知の方おりましたら教えてください。
宜しくお願いします。

投稿時間:2006/05/13(Sat) 11:34
投稿者名:Say
Eメール:
URL :
タイトル:
Re: フォームのフォーカス
TabStopはTab移動制御をするだけで、クリックによるFocus移動とは無関係です。

>初期表示時や
表示範囲外にFocus可能な適当なコントロールを置いて、tab順を0にしておくとか。

>ボタンクリック時などに
CommandButtonは、クリックすればFocusがあたります。そういう仕様です。
Focusを当てたくない = クリックさせたくない なら、Enabled = Falseにすればいいでしょう。
Focusは当てたくないがClickイベントはおこしたい、というのなら
Focusのあたらない別のコントロールで代用するとか、
Focusがあたったら「表示範囲外の適当なコントロール」にFocusをとばすとか、
Form上にボタンの絵を描いて、FormのMouseDown,MouseUpあたりでクリック位置チェックをして
処理を書くとかの工夫が必要でしょう。

ただ、その前に、
標準インターフェイス(ボタンのTab移動)の禁止の是非について
考慮しておいたほうがいいかもしれません。
(世の中にはマウス操作よりキー操作を好む人種もいますので)

投稿時間:2006/05/15(Mon) 12:32
投稿者名:茶太郎
URL :
タイトル:
Re^2: フォームのフォーカス
Sayさん、ありがとうございました。
参考に色々試してみたいと思います。