使用方法参数在 JOptionPane 中选择图标类型
Choosing type of icon in JOptionPane with method argument
我试图尽可能不重复代码,我目前被困在(我认为是)非常简单的问题上,但我无法弄清楚。我已经浏览过 SO 但我找不到类似的问题所以我在这里。
public void displayPrompt(String promptMessage, ?????) {
JOptionPane.showInputDialog(this, promptMessage, JOptionPane.QUESTION_MESSAGE);
}
这是我目前正在研究的方法。我必须传递什么参数来代替 ?????
才能将 JOptionPane.QUESTION_MESSAGE
更改为,比方说,WARNING_MESSAGE
?
QUESTION_MESSAGE
的描述告诉我它是一个整数:
int javax.swing.JOptionPane.QUESTION_MESSAGE = 3 [0x3]
QUESTION_MESSAGE
public static final int QUESTION_MESSAGE
这是否意味着我 实际上 可以传递一个整数来操作它?
示例:
public void displayPrompt(String promptMessage, int i) {
JOptionPane.showInputDialog(this, promptMessage, JOptionPane.i);
}
这将是最合乎逻辑的解释,但问题是 eclipse 不允许我这样做。
您可以将 JOptionPane
的静态字段之一作为参数传递给您的方法,并在调用 showInputDialog
时使用该值。
JOptionPane.showInputDialog(this, promptMessage, i);
当你调用方法时,你会做这样的事情:
displayPrompt("prompt", JOptionPane.QUESTION_MESSAGE);
// or
displayPrompt("prompt", JOptionPane.WARNING_MESSAGE);
将您的方法修改为:
public void displayPrompt(String promptMessage, int i) {
JOptionPane.showInputDialog(this, promptMessage, i);
}
然后这样称呼它:
displayPrompt("Text message for dialog", JOptionPane.QUESTION_MESSAGE);
测试有效。希望这能回答您的问题。
我试图尽可能不重复代码,我目前被困在(我认为是)非常简单的问题上,但我无法弄清楚。我已经浏览过 SO 但我找不到类似的问题所以我在这里。
public void displayPrompt(String promptMessage, ?????) {
JOptionPane.showInputDialog(this, promptMessage, JOptionPane.QUESTION_MESSAGE);
}
这是我目前正在研究的方法。我必须传递什么参数来代替 ?????
才能将 JOptionPane.QUESTION_MESSAGE
更改为,比方说,WARNING_MESSAGE
?
QUESTION_MESSAGE
的描述告诉我它是一个整数:
int javax.swing.JOptionPane.QUESTION_MESSAGE = 3 [0x3]
QUESTION_MESSAGE
public static final int QUESTION_MESSAGE
这是否意味着我 实际上 可以传递一个整数来操作它?
示例:
public void displayPrompt(String promptMessage, int i) {
JOptionPane.showInputDialog(this, promptMessage, JOptionPane.i);
}
这将是最合乎逻辑的解释,但问题是 eclipse 不允许我这样做。
您可以将 JOptionPane
的静态字段之一作为参数传递给您的方法,并在调用 showInputDialog
时使用该值。
JOptionPane.showInputDialog(this, promptMessage, i);
当你调用方法时,你会做这样的事情:
displayPrompt("prompt", JOptionPane.QUESTION_MESSAGE);
// or
displayPrompt("prompt", JOptionPane.WARNING_MESSAGE);
将您的方法修改为:
public void displayPrompt(String promptMessage, int i) {
JOptionPane.showInputDialog(this, promptMessage, i);
}
然后这样称呼它:
displayPrompt("Text message for dialog", JOptionPane.QUESTION_MESSAGE);
测试有效。希望这能回答您的问题。