• ベストアンサー

requestFocusについて

他人の作ったプログラムを見ていると requestFocus(); というのがよく出てくるんですが、どういう操作をしているのかがよく分かりません。 意味は「フォーカスを要求」という感じで、 フォーカスは「焦点」だそうですが、焦点を合わせるってどういうことなのでしょうか? 例えば、キーイベントに関するところで使う requestFocusはどういうことを表しているのでしょうか?教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • UKY
  • ベストアンサー率50% (604/1207)
回答No.2

ここで言う「フォーカス」というのは、簡単に言うとウィンドウ内のどのコンポーネント(テキストボックスとかボタンとか)にカーソルがあるかということです。 例えば、テキストボックスAにカーソルがあって、キーを押せばそこに文字が入力できる状態になっているとき、「Aにフォーカスがある」という言い方をします。 また、テキストボックスAからテキストボックスBにカーソルを移してBに入力できる状態にすることを、「AからBにフォーカスを移す」といいます。 カーソルはテキストボックス内において文字単位で着目点を表しますが、フォーカスはウィンドウ内においてコンポーネント単位で着目点を表します。

exprosion
質問者

お礼

とても分かりやすい回答をありがとうございます。 やっと謎が解けたように思います。 初期化メソッドで(htmlに貼り付けられている)アプレットに対してrequestFocusを使うことによって、 アプレットをクリックしなくてもキー入力ができるようにしているということなんですね。覚えておきたいと思います。 本当にありがとうございました。

その他の回答 (1)

  • jun-1
  • ベストアンサー率29% (18/61)
回答No.1

APIドキュメントより、 > このコンポーネントが入力フォーカスを取得すること>を要求します。この要求が許可されるには、画面上で >コンポーネントが可視であることが必要です。 ということで、例えば、あるキーが押されたら、特定の TextFieldにフォーカスをあてる、いったように使います。

exprosion
質問者

お礼

なるほど。 アドバイスありがとうございました。

関連するQ&A

専門家に質問してみよう