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
There is an easy way to change the default font in JOptionPane . Pass a string modified in html format, which means you can either use <font> tag or even CSS. Using <font> tag.
If the user clicks "cancel", the response will be null. If they click "ok" without entering any text the response will be the empty string.
It will return an int which represents which button was pressed. Run the code without the method call, and see what order the buttons are in ('Yes No Cancel' or whatever). If you hit yes in that example, it'd return 0, No would return 1, and Cancel 2 (closing the dialog returns -1).
JOptionPane. showInputDialog() will return the string the user has entered if the user hits ok, and returns null otherwise.
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");
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.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With