有没有办法确定Okay / Cancel按钮的正确顺序?

时间:2015-09-17 10:39:28

标签: java swing jpanel jbutton joptionpane

我们有一个Swing应用程序,其中包含许多输入对话框,包括okay和cancel按钮。

我注意到在JOptionPane中,okay和cancel按钮的顺序根据平台而变化。在Windows上它是好的/取消,在Unix上它是取消/好的。

我们添加了自己的ok和取消按钮,我希望它们的顺序与它们在JOptionPane中显示的顺序相匹配,以保持一致性。

我想知道是否有办法询问UIManager以找出当前外观或平台的正确顺序。

提前致谢。 马特

3 个答案:

答案 0 :(得分:5)

JOptionPane中按钮的顺序由

控制
boolean isYesLast = UIManager.getDefaults().getBoolean("OptionPane.isYesLast");

如果isYesLast为真,则按钮顺序相反(例如是/否/取消 - >取消/否/是)

答案 1 :(得分:0)

您可以使用:

Object[] options = { "OK", "CANCEL" };
JOptionPane.showOptionDialog(null, "Click OK to continue", "Warning",
JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE,
null, options, options[0]);

答案 2 :(得分:0)

是的,只有你没想到的那样。 您必须设计自己的OptionPane类。而你必须从JOptionPane扩展。这样您就可以设计按钮的放置位置。 我个人建议寻找其他溶剂。