【发布时间】:2025-12-10 03:40:01
【问题描述】:
假设我想在JLabel 中显示很长的一行。我该怎么做?
目前,较长的行是这样出现的:
我必须调整窗口大小才能看到完整的文本。
当文本几乎达到我的JFrame 的宽度时,我怎样才能使换行符出现?
我不确定这里是否需要任何代码来回答这个问题,但仍然:
我的框架属性:
frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(new Dimension(450, 400));
frame.setLocation(new Point(400, 300));
frame.setLayout(new BorderLayout());
我要修改的标签:
question = new JLabel("Question:");
question.setFont(new Font("Serif", Font.BOLD, 15));
question.setHorizontalAlignment(JLabel.CENTER);
编辑: 更多详情:
我正在从文件中读取行,然后显示它们。线的大小不固定,所以我不知道把<br>放在哪里。
编辑 2:
我最终使用了JTextArea。
private JTextArea textAreaProperties(JTextArea textArea) {
textArea.setEditable(false);
textArea.setCursor(null);
textArea.setOpaque(false);
textArea.setFocusable(false);
textArea.setLineWrap(true);
textArea.setWrapStyleWord(true);
return textArea;
}
【问题讨论】:
-
您可能会发现answer 的第二个示例很有帮助。它使用 HTML 为工具提示提供扩展布局,但概念相同