我正在设置一个Java swing应用程序,并尝试使我的JLabel字符串完全显示为:
Geboortedatum
yy-mm-dd
我曾尝试制作字符串变量,并将其与中间的System.lineSeparator()放在一起。
String lineGeboorte =“ Geboortedatum”; 字符串lineDateFormat =“ YY-MM-DD”;
//HHHMMMMMMMMMMMMM???????????????????
String lineLabelGeboorte = lineGeboorte + System.lineSeparator() + lineDateFormat;
lblGeboortedatum = new JLabel (lineLabelGeboorte);
System.out.println(lineLabelGeboorte);
lblGeboortedatum.setFont(new Font("Tahoma", Font.PLAIN, 12));
lblGeboortedatum.setForeground(Color.WHITE);
lblGeboortedatum.setBounds(278, 0, 96, 34);
panel.add(lblGeboortedatum);
我希望“ Geboortedatum ...”的输出为:
Geboortedatum
yy-mm-dd
答案 0 :(得分:1)
您可以执行以下操作:
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class TestJFrame extends JFrame {
public static void main(String[] args) {
JFrame f = new JFrame("label");
JLabel l = new JLabel();
String hello="Hello";
String world="World!";
String label="<html><body>"+hello+"<br>"+world+"</body></html>";
l.setText(label);
JPanel p = new JPanel();
p.add(l);
f.add(p);
f.setSize(300, 300);
f.show();
}
}
答案 1 :(得分:1)
这个问题已经回答了,我想提供更多背景信息。
官方文档指出,您可以在大多数Swing组件中使用纯HTML。您可以找到完整的参考文献here。最重要的部分是:
要指定组件的文本具有HTML格式,只需将 标签在文本开头,然后在其中使用任何有效的HTML 其余的。
因此,一个有效的例子是
new JButton("<html>Line one<br>Line two</html>");
因此,可以使用<br>
使用纯HTML换行。 (插入单个换行符)。您还可以使用其他各种HTML标记来设置组件样式,例如
<b>
粗体文本样式,例如 this <i>
斜体文本样式,例如 this here可以找到JLabel
的完整概述,它比实际的Javadoc更好,因为后者没有提到可以使用HTML。