我今天的问题很简单。我试图在我的Java代码中使用HTML标记,特别是在JOptionsPane中。到目前为止,我几乎完成了所有工作。我知道我可能使用CSS完成同样的事情但是现在我只是尝试使用标签来实现它。以下是给我带来麻烦的具体代码:
"<br><body bgcolor=black><table border=1><font size=4 color=white>batch<font size=6 color=white>1</font> of <font size=6 color=white>"+ofFiveDisplay+"</font></table></body>"
最终结果应该是文字Batch 1 of 2
。 (这两个是从一个变量中拉出来的)显示在JOptionsPane
文本中的一行上。我想要&#34; 1&#34;和&#34; 2&#34;变得更大我还希望所有文本都是白色,文本背景为黑色。
我可以添加黑色背景并获得&#34; 1&#34;或&#34; 2&#34;白色,但我似乎无法改变&#34;批次&#34;文本。请让我知道为什么我似乎无法改变&#34;批次&#34;使用上面的代码和我可以做些什么来修复它。提前谢谢!
答案 0 :(得分:3)
Font是一个已弃用的标记,并未广泛采用,因此可能无效。您可以尝试在这样的范围内内联CSS:
"<span style='font-size:6; color:white'>"+ofFiveDisplay+"</span>
答案 1 :(得分:2)
首先,每当您需要帮助发布MCVE时,我们就可以复制粘贴它,并能够更快更好地为您提供帮助。
您使用font
上的HTML5
标记是deprecated
要使用字体大小等,最好的方法是在<html>
标记内使用CSS,如下所示:
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class ShowMessageDialogExample {
public static void main(String[] args) {
JFrame frame = new JFrame("JOptionPane showMessageDialog example");
String css = "<span style='font-size: 10; color: white; background-color: black'>";
String batchCss = "<span style='font-size: 20;'>";
String endSpanCss = "</span>";
JOptionPane.showMessageDialog(frame, "<html>" + css + batchCss + " 1 " + endSpanCss + "of" + batchCss + " 2 " + endSpanCss + endSpanCss + "</html>");
System.exit(0);
}
}
我将CSS部分放在变量中,因此您不必每次都重复代码。希望它有所帮助,你可以按照我上面留下的链接,在你的下一个问题和答案中应用这个建议,这样它们就会更好,更有价值。
这是输出:
修改强>
在OP comment
之后当我查看CSS指南时,他们有点混乱
这是&#34; guide&#34;其中介绍了如何在Java swing应用程序中使用HTML5
,CSS
甚至javascript
。另一个reference到同一主题。