在这种情况下,die1
是从其他地方的计算得出的Integer
。我希望die1
的值在视觉上以边框和/或较大的文本/不同的颜色来区分。有没有一种方法可以解决此问题,而不必涉及两个独立的JLabels
?谢谢。
firstJLabel.setText("Die 1: " + die1);
最佳答案
有没有一种方法可以解决此问题,而无需拥有2个单独的JLabel?
您可以在标签中使用HTML:
firstJLabel.setText("<html><font color=\"red\">Die 1: </font>" + die1 + "</html>");
或者,您可以使用
JTextPane
使其看起来像标签。它支持以下属性:JTextPane textPane = new JTextPane();
textPane.setBorder( null );
textPane.setOpaque( false );
SimpleAttributeSet green = new SimpleAttributeSet();
StyleConstants.setForeground(green, Color.GREEN);
// Add some text
try
{
StyledDocument doc = textPane.getStyledDocument();
doc.insertString(0, die1, null);
doc.insertString(0, "Die 1: ", green);
}
catch(Exception) {}