Change the OK Cancel string in JOptionPane

一笑奈何 提交于 2019-12-01 16:08:28

问题


I was wondering is it possible to change the OK Cancel Button to custom string in java? I have

JOptionPane.showConfirmDialog(message, title, JOptionPane.OK_CANCEL_OPTION);

Right now, the button will show "OK" and "Cancel". Is it possible to change the text for that? for example into "A" and "B" or maybe japanese text?

Thank you


回答1:


Looks like instead of JOptionPane.showConfirmDialog you are going to have to use JOptionPane.showOptionDialog, which lets you supply your own texts as an array.

Try the following:

JOptionPane.showOptionDialog(null, 
        "Do you like this answer?", 
        "Feedback", 
        JOptionPane.OK_CANCEL_OPTION, 
        JOptionPane.INFORMATION_MESSAGE, 
        null, 
        new String[]{"Yes I do", "No I don't"}, // this is the array
        "default");



回答2:


Look at the javadocs in the detailed class description part:
You aren't limited to this set of option buttons. You can provide any buttons you want using the options parameter.
What (options) is also described there. Anyway the default texts (i.e. OK/Cancel) are usually based on the computer locale, but for custom labels use the method described in the javadocs.




回答3:


I know this is very old question. But for future reference, we can do it by add 2 lines before showConfirmDialog:

UIManager.put("OptionPane.cancelButtonText", "Go back");
UIManager.put("OptionPane.okButtonText", "Save");


来源:https://stackoverflow.com/questions/8763075/change-the-ok-cancel-string-in-joptionpane

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!