我想在JOptionPane.showInputDialog中设置OK和CANCEL按钮的文本
到我自己的字符串.
到我自己的字符串.
有一种方法来更改JOptionPane.showOptionDialog中的按钮文本,但是我找不到在showInputDialog中更改它的方法.
解决方法
如果要使用自定义按钮文本的JOptionPane.showInputDialog,可以扩展JOptionPane:
- public class JEnhancedOptionPane extends JOptionPane {
- public static String showInputDialog(final Object message,final Object[] options)
- throws HeadlessException {
- final JOptionPane pane = new JOptionPane(message,QUESTION_MESSAGE,OK_CANCEL_OPTION,null,options,null);
- pane.setWantsInput(true);
- pane.setComponentOrientation((getRootFrame()).getComponentOrientation());
- pane.setMessageType(QUESTION_MESSAGE);
- pane.selectInitialValue();
- final String title = UIManager.getString("OptionPane.inputDialogTitle",null);
- final JDialog dialog = pane.createDialog(null,title);
- dialog.setVisible(true);
- dialog.dispose();
- final Object value = pane.getInputValue();
- return (value == UNINITIALIZED_VALUE) ? null : (String) value;
- }
- }
你可以这样称呼:
- JEnhancedOptionPane.showInputDialog("Number:",new Object[]{"Yes","No"});