2013-08-17 12 views
7

Chcę zmienić TAK i NIE na coś w rodzaju Zgadzam się/Nie zgadzam. Co mam zrobić?Jak zmienić opcję Tak/Nie w oknie dialogowym potwierdzenia?

int reply = JOptionPane.showConfirmDialog(null, 
              "Are you want to continue the process?", 
              "YES?", 
              JOptionPane.YES_NO_OPTION); 
+0

[jako oczywiście wszystko jest poradnik Oracle] (http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html#button) – mKorbel

Odpowiedz

3

Spróbuj tego:

Zobacz JOptionPane documentation

JOptionPane(Object message, int messageType, int optionType, 
     Icon icon, Object[] options, Object initialValue) 

gdzie opcja określa przycisków z InitialValue. Więc można je zmienić

Przykład

Object[] options = { "Agree", "Disagree" }; 

JOptionPane.showOptionDialog(null, "Are you want to continue the process?", "information", 
JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE, 
null, options, options[0]); 
4

Można użyć parametru options naciskać niestandardowe opcje do showOptionDialog;

Object[] options = { "Agree", "Disagree" }; 
JOptionPane.showOptionDialog(null, "These are my terms", "Terms", 
    JOptionPane.DEFAULT_OPTION, JOptionPane.PLAIN_MESSAGE, null, 
    options, options[0]); 
+0

pracować i zmieniać za JOptionPane.showOptionDialog ale chcesz zmienić dla JOptionPane.showConfirmDialog Czy to samo, czy nie? –

23

można wykonać następujące czynności

JFrame frame = new JFrame(); 
String[] options = new String[2]; 
options[0] = new String("Agree"); 
options[1] = new String("Disagree"); 
JOptionPane.showOptionDialog(frame.getContentPane(),"Message!","Title", 0,JOptionPane.INFORMATION_MESSAGE,null,options,null); 

wyjścia jest następujący

enter image description here

Więcej informacji na temat funkcji showOptionDialog() Zobacz here.

+0

+1 dla obrazu pocztowego –

+0

Tak, to działa zgodnie z oczekiwaniami, ale czy istnieje sposób na zmianę czcionki przycisków "Zgadzam się" i "Nie zgadzam się"? Chcę umiędzynarodowić moją aplikację. – Sahan

2

Spróbuj tego !!

int res = JOptionPane.showConfirmDialog(null, "Are you want to continue the process?", "", JOptionPane.YES_NO_OPTION); 
     switch (res) { 
      case JOptionPane.YES_OPTION: 
      JOptionPane.showMessageDialog(null, "Process Successfully"); 
      break; 
      case JOptionPane.NO_OPTION: 
      JOptionPane.showMessageDialog(null, "Process is Canceled"); 
      break; 
     } 
Powiązane problemy