2013-01-18 26 views

Odpowiedz

7

Jeśli chcesz JOptionPane.showInputDialog z tekstami przycisk niestandardowy, można przedłużyć 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; 
    } 
} 

można nazwać to tak:

JEnhancedOptionPane.showInputDialog("Number:", new Object[]{"Yes", "No"}); 
+0

wielkie dzięki! dokładnie to, czego szukałem ...! –

8

Poniższy kod powinien spowodować wyświetlenie okna dialogowego, w którym można określić tekst przycisku w polu Object[].

Object[] choices = {"One", "Two"}; 
Object defaultChoice = choices[0]; 
JOptionPane.showOptionDialog(this, 
      "Select one of the values", 
      "Title message", 
      JOptionPane.YES_NO_OPTION, 
      JOptionPane.QUESTION_MESSAGE, 
      null, 
      choices, 
      defaultChoice); 

Należy również zapoznać się z samouczkami w języku Java na stronie Oracle. Znalazłem rozwiązanie na ten link w samouczków http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html#create

15

jeśli nie chcesz go do tylko jednego inputdialog dodaj te linie przed utworzeniem dialogowe

UIManager.put("OptionPane.cancelButtonText", "nope"); 
UIManager.put("OptionPane.okButtonText", "yup"); 

gdzie "yup" i "nope" to tekst, który chcesz wyświetlić:

+0

, który również był bardzo pomocny! dzięki! –

Powiązane problemy