[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『コマンドボタンも自動選択について』(zarigani)
前置きが長くなりましたが、一つ目のコマンドボタンでリターンしたら、二つめのコマンドボタンに移って、マウス操作をせずにリターンだけで処理ができるようにしたいのですが。TabIndexの数値をいろいろいじくってみたんですが上手くいきません。
よろしくお願いいたします。
質問のポイントだけから言えば
Private Sub CommandButton1_Click()
'諸々の判定処理
'もし判定OKで、次のコマンドボタンに移動させたければ
CommandButton2.SetFocus
End Sub
だけど、どうなんだろうね? もし、操作者が1つめのコマンドボタンをクリックせずに、2つめのコマンドボタンをクリックしたらどうなる? もし、そのような操作も大丈夫なようにロジックがくまれているとすれば、なぜ、2つにわけるのかな? 現在、2つのコマンドボタンでそれぞれ処理しているものを、1つにすればいいのでは?
(ぶらっと)
(ぶらっと) ありがとうございます。 SetFocusも使ってみたのですが、なぜかエラーを起こしてしまいました。 (なぜエラーが発生したのかわかりませんが。)
しかし、アドバイスに基づいて再度トライしてみたら上手く移動できるみたいです。
ありがとうございました。先に進めてみます。
エラーの詳細は次のようなものです。
実行時のエラー'2110'
コントロールが表示されていない、りようできない、またはフォーカスを持てないため、
そのコントロールにフォーカスを移すことはできません。
このコメントはちょっと敷居が高くて、なんのことか分かりません。
テストでは、4つほどのコマンドボタンを準備して、
それがクリックされる毎に、他のボタンに移動できるようSetFocusしてみました。
これは上手くいったんですが、実際のプログラムでは、Frameなんかのなかにボタンが
入っていたりしているので、この辺も悪さしているのかも知れませんが。
考えられる理由は、実行のタイミングで CommandButton2 あるいは、そのボタンが含まれる Frame が ・EnabledプロパティがFalse になっている。 ・Visibleプロパティ が、Falseになっている。 どんな制御が必要なのか、要件もコードも見えないので具体的にはアドバイスできないけど SetFocusの前に、 そのコントロール.そのプロパティ = True としてやればいかが?
(ぶらっと)
(ぶらっと)さん ありがとうございました。 無事解決することができました。極めて単純なミスでした。
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.