微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – 更改JTextArea中不同行的字体

我想在JTextArea中添加不同的字体行,但是最后一个字体似乎覆盖了另一个字体.

请帮忙…

import java.awt.*;
import javax.swing.*;

@SuppressWarnings("serial")
public class test extends JFrame {

private static JTextArea referenceTextArea = new JTextArea(10,10);
private JPanel panel = new JPanel();

public test() {
    this.add(panel);
    panel.add(referenceTextArea);
}

public static void texttest() {
    referenceTextArea.setFont(new Font("Serif",Font.BOLD,15));
    referenceTextArea.append("line1");
    referenceTextArea.append("\n");

    referenceTextArea.setFont(new Font("Serif",Font.ITALIC,30));
    referenceTextArea.append("line2");
    referenceTextArea.append("\n");
}

public static void main(String[] args) {
    test frame = new test();
    frame.setVisible(true);
    frame.setSize(400,400);
    frame.setResizable(false);
    frame.setLocationRelativeto(null);
    frame.setDefaultCloSEOperation(EXIT_ON_CLOSE);

    texttest();
}
}

解决方法

尝试使用JEditorPane / JTextPane

http://download.oracle.com/javase/tutorial/uiswing/components/editorpane.html

这些支持HTML格式.普通的JTextArea的setFont方法只会设置整个textarea的字体.

原文地址:https://www.jb51.cc/java/129583.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐