我在Swing消息对话框中看到一些不一致的HTML显示。下面的第一个示例调用很好,但第二个示例将一个break标记显示为文字文本。这是怎么回事?
import javax.swing.*;
class Test {
public static void main(String... args) {
SwingUtilities.invokeLater(() -> {
JOptionPane.showMessageDialog(null,
"<html>line 1<br>line 2<br>line 3");
JOptionPane.showMessageDialog(null,
"<html>line 1<br>\nline 2<br>\nline 3");
});
}
}
答案 0 :(得分:2)
不知道问题是什么,但看起来JLabel正确呈现HTML:
JLabel label = new JLabel("<html>line 1<br>\nline 2<br>\nline 3");
JOptionPane.showMessageDialog(null, label);
哪个没有意义,因为我认为JOptionPane会让JLabel呈现文本?
答案 1 :(得分:0)
所以做这样的事情
JOptionPane.showMessageDialog(null,
"<html>line 1<br>line 2<br>line 3");