【问题标题】:Customize JOptionPane.showInputDialog自定义 JOptionPane.showInputDialog
【发布时间】:2021-08-09 20:01:56
【问题描述】:

如何自定义JOptionPane.showInputDialog?例如,我想将YesCancel 选项更改为AB。请记住,它仅适用于showInputDialog

【问题讨论】:

  • 阅读 How to Make Dialogs 上的 Swing 教程,了解如何自定义按钮文本的示例。

标签: java swing joptionpane


【解决方案1】:

看看这个答案https://stackoverflow.com/a/14408269/15935039 在您的情况下,您可以执行以下操作:

public static void main(String[] args) {
    Object[] choices = {"A", "B"};
    Object defaultChoice = choices[0];
    JOptionPane.showOptionDialog(null,
        "Select one of the values",
        "Title message",
        JOptionPane.YES_NO_OPTION,
        JOptionPane.QUESTION_MESSAGE,
        null,
        choices,
        defaultChoice);
}

如果您必须使用showInputDialog,那么您可以执行以下操作:

public static void main(String[] args) {
    UIManager.put("OptionPane.okButtonText", "A");
    UIManager.put("OptionPane.cancelButtonText", "B");

    JOptionPane.showInputDialog("My dialog");      
    
    UIManager.put("OptionPane.cancelButtonText", "Cancel");
    UIManager.put("OptionPane.okButtonText", "OK");
}

请注意,使用UIManager 将更改所有输入的值,因此在对话后将其更改回来很重要。

【讨论】:

  • 我知道 showOptionDialog 但 showInputDialog 怎么样?
  • @hihi 我已经用showInputDialog的解决方案编辑了我的答案
猜你喜欢
  • 2016-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-22
  • 2011-09-27
相关资源
最近更新 更多