jTextField 设置其中几个特殊字的字体颜色和大小

来源:百度知道 编辑:UC知道 时间:2024/05/17 06:02:16
比如我的jTextField显示的字是“您可以对问题设定匿名,但您需要付出积分10分。 ” 我想把“您可以对问题设定匿名” 设成红色显示出来,该怎么做呢???

JTextArea是不能改变部分文字属性的,你用JTextPane作为文本输入区域就可以了。
给你个例子:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.text.*;
public class DocColorTest extends JFrame
{
JTextPane textPane = new JTextPane();
JPanel contPane = new JPanel();
public DocColorTest()
{
super("DocColorTest");
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
setBounds((d.width-300)/2,(d.height-200)/2,300,200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

contPane.setLayout(new BorderLayout());
contPane.add(new JScrollPane(textPane),"Center");

insertDocument("您可以对问题设定匿名", Color.RED);
insertDocument(",但您需要付出积分10分。 ", Color.BLACK);

setContentPane(contPane);
setVisible(true);
}
public static void main(String [] args)
{
new DocColorTest();
}
public void insertDocu