java - JTextPane 拒绝对长字符串进行自动换行

标签 java swing text jscrollpane jtextpane

您好,我正在创建一个简单的 Java 服务器聊天,但我根本无法让 swing 很好地处理长字符串。

Image showing text not wrapping .

我不想要水平滚动条,我希望单词在需要时中断并流到另一行。

我用来创建 JTextPane 的代码是:

super("Message Server");
    userText = new JTextField();
    userText.setEditable(false);
    userText.addActionListener(
        new ActionListener(){
            public void actionPerformed(ActionEvent event){
                sendMessage(event.getActionCommand());
                userText.setText("");
            }
        }
    );
    getContentPane().add(userText, BorderLayout.SOUTH);
    chatWindow = new JTextPane();
    JScrollPane scrollPane = new JScrollPane(chatWindow);
    getContentPane().add(scrollPane);

    setSize(300, 450); //Sets the window size
    setVisible(true);

    chatWindow.setEditable(false);

最佳答案

您可以使用 JTextArea 和相应的换行相关方法 setLineWrap()setWrapStyleWord(),而不是使用 JTextPane > 实现你想要的。

是的,您可以使用JTextArea设置字体 例如。

JTextArea txtArea = new JTextArea();
Font font = new Font("Verdana", Font.BOLD, 12);
txtArea.setFont(font);
txtArea.setForeground(Color.BLUE);
txtArea.setText("Hellow World!");

关于java - JTextPane 拒绝对长字符串进行自动换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29192331/

相关文章:

java - 单击 JButton 后关闭 jFrame

java - 调整 JFrame 大小时去除组件之间的额外空间

powershell - 在 PowerShell 中将新行写入文本文件

xaml - 如何在 UWP 中对 TextBlock 的比例进行动画处理

html - 隐藏文本的特殊 unicode/转义字符?

java - 我们如何在rest api自动化中动态构建 "Params"

java - 如何通过 Camel Spring DSL 将文件作为邮件附件发送

java - jooq 无法从 a 类转换为 b 类

java - 下载 ubuntu 14.04 中的所有软件包后无法初始化 opennms 数据库 postgres

Java 层 JPanel