• 追加された行はこの色です。
  • 削除された行はこの色です。
TITLE:DefaultButtonの設定
#navi(../)
RIGHT:Posted by [[terai]] at 2008-05-12
#tags(JRootPane, JButton, JTextField, Focus)
RIGHT:Posted by &author(aterai); at 2008-05-12
*DefaultButtonの設定 [#ic3f1505]
DefaultButtonをJRootPaneに設定します。
``DefaultButton``を``JRootPane``に設定します。

-&jnlp;
-&jar;
-&zip;

#screenshot
//#screenshot
#ref(http://lh5.ggpht.com/_9Z4BYR88imo/TQTKiSOjSTI/AAAAAAAAAWI/e462LXNNrYU/s800/DefaultButton.png)

**サンプルコード [#lb7061a4]
#code{{
frame.getRootPane().setDefaultButton(b1);
#code(link){{
frame.getRootPane().setDefaultButton(button1);
}}

**解説 [#uc51d08d]
上記のサンプルでは、JRootPane#setDefaultButtonメソッドを使用して、デフォルトボタンを切り替えています。
上記のサンプルでは、``JRootPane#setDefaultButton``メソッドを使用して、デフォルトボタンを切り替えています。

フォーカスが設定したデフォルトボタンにない場合でも、Enterキーを押したときに起動されます。
-ルート区画内に JTextPane やフォーカスのあるJButtonなどの起動イベントを消費する別のコンポーネントがある場合は除く
--JTextField内にフォーカスがある場合は、Enterキーを押したときに起動される
--JTextArea内にフォーカスがある場合は、Enterキーを押したときに起動されない(改行される)
- フォーカスが設定したデフォルトボタンにない場合でも、``Enter``キーを押したときに起動
-- ただし、ルート区画内に``JTextPane``やフォーカスのある``JButton``などの起動イベントを消費する別のコンポーネントがある場合は除く
--- ``JTextField``内にフォーカスがある場合は、``Enter``キーを押したときに起動される
--- ``JTextArea``内にフォーカスがある場合は、``Enter``キーを押しても起動されない(改行が入力される)

デフォルトボタンの設定を削除する場合は、nullを代入します。
----
デフォルトボタンの設定を削除する場合は、``JRootPane#setDefaultButton``に``null``を設定します。

**参考リンク [#u64aef30]
-[[JRootPane#setDefaultButton(javax.swing.JButton)>http://java.sun.com/javase/ja/6/docs/ja/api/javax/swing/JRootPane.html#setDefaultButton(javax.swing.JButton)]]
-[http://docs.oracle.com/javase/jp/6/api/javax/swing/JRootPane.html#setDefaultButton(javax.swing.JButton) JRootPane#setDefaultButton(javax.swing.JButton)]
-[[Windowを開いたときのフォーカスを指定>Swing/DefaultFocus]]

**コメント [#p1858d39]
#comment