Java JOptionPane 默认文本

Posted

技术标签:

【中文标题】Java JOptionPane 默认文本【英文标题】:Java JOptionPane default text 【发布时间】:2011-07-20 13:45:17 【问题描述】:

当我要求用户为我使用以下代码制作的程序输入数量时,默认文本为 3。

String input = JOptionPane.showInputDialog(null, "Please enter new quantity",
                                           JOptionPane.QUESTION_MESSAGE);

我该如何更改?

【问题讨论】:

“默认文本”是什么意思? 文本域中已经输入的文本 【参考方案1】:

你使用的method是:

public static String showInputDialog(Component parentComponent,
                                     Object message,
                                     Object initialSelectionValue)

这里的第三个参数 (initialSelectionValue) 是文本字段中的默认值。您将 JOptionPane.QUESTION_MESSAGE 作为第三个参数,它是一个值 = 3 的 int 常量。因此,您将 3 作为在文本字段中输入的默认值。

试试这个:

String input = JOptionPane.showInputDialog(null,
                "Please enter new quantity", "");

或者这个

String input = JOptionPane.showInputDialog(null,
                "Please enter new quantity", "Please enter new quantity",
                JOptionPane.QUESTION_MESSAGE);

【讨论】:

String input = JOptionPane.showInputDialog(null, "Please enter new quantity", "Please enter new quantity", JOptionPane.QUESTION_MESSAGE,null,null,"default text").toString; ^^ 我认为这应该被选为这个问题的最佳答案,因为它也允许标题。但由于某种原因它给了我一个错误。 NullPointer 异常的原因是您在JOptionPane 的结果对象上使用了toString()。您首先需要检查该对象是否为空,然后使用toString()。如果输入对话框中的条目为空白,@Neifen 的注释将出现空指针异常。【参考方案2】:

这样就可以了:

String input = (String)JOptionPane.showInputDialog(null, "Please enter new quantity",
"Please enter new quantity", JOptionPane.QUESTION_MESSAGE,null,null,"default text");

【讨论】:

【参考方案3】:

您使用的方法是JOptionPane.showInputDialog(Component, Object, Object)。

您要使用的方法是JOptionPane.showInputDialog(Component, Object, String, int)。

【讨论】:

我希望用户在执行此操作时能够输入数字 JOptionPane.showInputDialog(null, "请输入新数量", "请输入新数量", 1) 它只是显示了一个弹出窗口没有输入框,我做错了吗??? @Ste T 你可以。将您的方法调用更改为String input = JOptionPane.showInputDialog(null, "Please enter new quantity", "Title", JOptionPane.QUESTION_MESSAGE); 请检查您的链接,因为它们将来会出现在“预览”中,并注意最好链接到当前版本的JavaDocs(在搜索ClassName+javadoc+6时添加“6”应该这样做)。

以上是关于Java JOptionPane 默认文本的主要内容,如果未能解决你的问题,请参考以下文章

Java:使用 JOptionPane.showInputDialog(null, "Text"); 的多行文本

Java JOptionPane 文本不可读

如何使 JOptionPane.showConfirmDialog 默认没有选中?

Java:JOptionPane.showMessageDialog的问题

java中JoptionPane类的使用

JOptionPane 中的文本换行?