我有一个对话框,我希望将其作为特定部分粗体。
我知道我必须用html
执行此操作,但是当我这样做时,我似乎丢失了一半的对话框消息。
原创(不粗体):
public class View extends JFrame {
private final static String NEW_LINE = System
.getProperty("line.separator");
public void someMethodDisplayDialog(String string1, String string2, String string3) {
JOptionPane.showMessageDialog(this,
"An problem occured: " + string1
+ NEW_LINE
+ string2 + " Error: "
+ string3,
"Error",
JOptionPane.ERROR_MESSAGE);
}
}
让我们说:
string1 = "Wrong Key!"
,string2 = "Input"
,string = "Z key pressed"
。在对话框中显示:
JOptionPane.showMessageDialog(this,
"An problem occured: " + string1
+ NEW_LINE + "<html><b>"
+ string2 + " Error:</b></html> "
+ string3,
"Error",
JOptionPane.ERROR_MESSAGE);
运行时,这会使我想要的更加大胆,但&#39;会切断其余部分,例如。未显示string3
我已尝试在</b></html>
之后添加结束string3
代码。
显示一切,但string3
也是粗体,我不想要!
我在这里错过了一些明显的东西吗?我不确定为什么会这样?
答案 0 :(得分:2)
正如@Andrew Thompson所说,你的消息必须以<html>
标签开头。所以你的代码应该是这样的:
JOptionPane.showMessageDialog(this,
"<html>An problem occured: " + string1
+ "<br><b>"
+ string2 + " Error:</b> "
+ string3 + "</html>",
"Error",
JOptionPane.ERROR_MESSAGE);
答案 1 :(得分:0)
在string3后添加一个+号 编辑:你的/ html标签正在切断字符串3
JOptionPane.showMessageDialog(this,
"An problem occured: " + string1
+ NEW_LINE + "<html><b>"
+ string2 + " Error:</b>"
+ string3 + "Error:</html>",
JOptionPane.ERROR_MESSAGE);