Swing/YesLastOptionPane の変更点
- 追加された行はこの色です。
- 削除された行はこの色です。
- Swing/YesLastOptionPane へ行く。
- Swing/YesLastOptionPane の差分を削除
--- category: swing folder: YesLastOptionPane title: JOptionPaneのYesボタンがCancelボタンなどの中で末尾に配置されるよう設定する tags: [JOptionPane] author: aterai pubdate: 2018-01-15T14:42:52+09:00 description: JOptionPaneのYesボタンがCancelボタンなどの後に追加されて一番右に配置されるよう設定します。 image: https://drive.google.com/uc?id=12DSo9IIp_Ah9F2FlvkEjjREEwZXyNNLWhA --- * 概要 [#summary] `JOptionPane`の`Yes`ボタンが`Cancel`ボタンなどの後に追加されて一番右に配置されるよう設定します。 #download(https://drive.google.com/uc?id=12DSo9IIp_Ah9F2FlvkEjjREEwZXyNNLWhA) * サンプルコード [#sourcecode] #code(link){{ private static final String KEY = "OptionPane.isYesLast"; JButton defaultButton = new JButton(KEY + ": false(default)"); defaultButton.addActionListener(e -> { UIManager.put("OptionPane.isYesLast", Boolean.FALSE); String str = JOptionPane.showInputDialog(getRootPane(), KEY + ": false"); log.setText(str); }); JButton yesLastButton = new JButton(KEY + ": true"); yesLastButton.addActionListener(e -> { UIManager.put("OptionPane.isYesLast", Boolean.TRUE); String str = JOptionPane.showInputDialog(getRootPane(), KEY + ": true"); log.setText(str); }); }} * 解説 [#explanation] - `OptionPane.isYesLast: false(default)` -- `WindowsLookAndFeel`でのデフォルトで`Yes`ボタン(`YES_OPTION`)や`OK`ボタン(`OK_OPTION`)を各オプションボタンの中で先頭(左端)に配置する -- `JOptionPane#setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT)`が設定されている場合、先頭は右端になる -- `JOptionPane#setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT)`が設定されている場合、先頭は右端に反転する - `OptionPane.isYesLast: true` -- `Yes`ボタンを各オプションボタンの中で末尾(右端)に配置する -- `MotifLookAndFeel`や`NimbusLookAndFeel`でもこの設定は有効 -- `JOptionPane#setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT)`が設定されている場合、末尾は左端になる -- `JOptionPane#setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT)`が設定されている場合、末尾は左端に反転する * 参考リンク [#reference] - [[JOptionPaneのボタンの揃えを変更する>Swing/OptionPaneButtonOrientation]] * コメント [#comment] #comment #comment