[英]JPanel to display large amount of text
我正在寻找一种方法来显示我的程序的介绍。 程序的每个部分都有自己的指令,这些指令是长的serval行。 在每一行的末尾都有\\n\\n
进行格式化。
如果fontsize自动调整到面板大小并且文本将居中,那将会很酷。 我尝试了TextLayout
并将文本添加到一个简单的JLabel
但没有一个正确地显示文本。
有关如何完成此任务的任何建议?
您还可以在JLabel文本中使用HTML格式。 您需要做的就是用<html>和</ html>包围文本,用<font>元素设置字体大小,并用<br>替换每个\\ n。
String formatted = text.replace("\n", "<br>");
formatted = "<html><font size='9'>" + formatted + "</font></html>";
JLabel label = new JLabel(formatted);
请参见如何在Swing组件中使用HTML 。
我同意@Josh M,你应该尝试将JTextArea( http://docs.oracle.com/javase/7/docs/api/javax/swing/JTextArea.html )与JScrollPane一起使用。 或者,如果您不希望用户操作太多gui,您可以使用基本的东西手动格式化文本,例如\\ n( http://www.coderanch.com/t/579851/java/java/actual-character- Java )和\\ t( http://forum.codecall.net/topic/53052-what-does-n-and-t-mean/ )。
您可以为JtextField提供列数
像这样:
JtextField textField = new JtextField("I Have a Big Text and I want show it now!",40);
40是列索引,这意味着文本现在有更多列用于显示默认数据。 而以其他方式你应该使用JTextArea
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.