如何改变JTextArea中的字体的大小?
比如说:你现在通过文件流读取一个txt文件,然后显示到JTextArea中,但是我想改变这些字体的大小,该如何做呢???谢谢各位大虾指教!!!!!兄弟将感激不尽!!最好能...
比如说:你现在通过文件流读取一个txt文件,然后显示到JTextArea 中,但是我想改变这些字体的大小,该如何做呢???
谢谢各位大虾指教!!!!!兄弟将感激不尽!!
最好能给一个完整的代码,谢谢!!
能不能弹出一个字体大小的对话框,然后改变? 展开
谢谢各位大虾指教!!!!!兄弟将感激不尽!!
最好能给一个完整的代码,谢谢!!
能不能弹出一个字体大小的对话框,然后改变? 展开
3个回答
推荐于2017-09-24 · 知道合伙人数码行家
关注
展开全部
jTextField 设置其中几个特殊字的字体颜色和大小
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 insertDocument(String text , Color textColor)//根据传入的颜色及文字,将文字插入文本域
{
SimpleAttributeSet set = new SimpleAttributeSet();
StyleConstants.setForeground(set, textColor);//设置文字颜色
StyleConstants.setFontSize(set, 12);//设置字体大小
Document doc = textPane.getStyledDocument();
try
{
doc.insertString(doc.getLength(), text, set);//插入文字
}
catch (BadLocationException e)
{
}
}
}
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 insertDocument(String text , Color textColor)//根据传入的颜色及文字,将文字插入文本域
{
SimpleAttributeSet set = new SimpleAttributeSet();
StyleConstants.setForeground(set, textColor);//设置文字颜色
StyleConstants.setFontSize(set, 12);//设置字体大小
Document doc = textPane.getStyledDocument();
try
{
doc.insertString(doc.getLength(), text, set);//插入文字
}
catch (BadLocationException e)
{
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询