当前位置: 技术问答>java相关
大家有没试过,在TextPane中设置每一行的颜色各不相同??
来源: 互联网 发布时间:2015-01-17
本文导语: 给点源码吧。 是这样的:我想用TextPane或EditPane来输出聊天室的内容,但是要在程序中动态设置每行的颜色,现在的问题是我只能设pane的enabled=false 让用户不能直接输入,and editable=true,让它可以用replaceSelection方法插入新的...
给点源码吧。
是这样的:我想用TextPane或EditPane来输出聊天室的内容,但是要在程序中动态设置每行的颜色,现在的问题是我只能设pane的enabled=false 让用户不能直接输入,and editable=true,让它可以用replaceSelection方法插入新的字串。但是问题是我没法让它能够每行以不同的颜色表现出来。
有知道的人吗,请指教!!!
|
import javax.swing.*;
import javax.swing.text.*;
class textApplet extends JApplet{
MutableAttributeSet textstyle;
JTextPane chat_TextArea;
JScrollPane scrlpane;
Document doc;
public void init()
{
chat_TextArea=new JTextPane();
scrlpane=new JScrollPane(chat_TextArea);
this.getContentPane().add(scrlpane);
textstyle=new SimpleAttributeSet();
StyleConstants.setFontFamily(textstyle,"宋体");
StyleConstants.setFontSize(textstyle,12);
//红色
StyleConstants.setForeground(textstyle,new Color(Color.red));
doc=chat_TextArea.getDocument();
try
{
chat_TextArea.setCaretPosition(doc.getLength());
doc.insertString(doc.getLength(),"这一行是红色!n",textstyle);
chat_TextArea.setCaretPosition(doc.getLength());
}
catch(BadLocationException blexcep){}
//蓝色
StyleConstants.setForeground(textstyle,new Color(Color.blue));
doc=chat_TextArea.getDocument();
try
{
chat_TextArea.setCaretPosition(doc.getLength());
doc.insertString(doc.getLength(),"这一行是蓝色!n",textstyle);
chat_TextArea.setCaretPosition(doc.getLength());
}
catch(BadLocationException blexcep){}
}
}
import javax.swing.text.*;
class textApplet extends JApplet{
MutableAttributeSet textstyle;
JTextPane chat_TextArea;
JScrollPane scrlpane;
Document doc;
public void init()
{
chat_TextArea=new JTextPane();
scrlpane=new JScrollPane(chat_TextArea);
this.getContentPane().add(scrlpane);
textstyle=new SimpleAttributeSet();
StyleConstants.setFontFamily(textstyle,"宋体");
StyleConstants.setFontSize(textstyle,12);
//红色
StyleConstants.setForeground(textstyle,new Color(Color.red));
doc=chat_TextArea.getDocument();
try
{
chat_TextArea.setCaretPosition(doc.getLength());
doc.insertString(doc.getLength(),"这一行是红色!n",textstyle);
chat_TextArea.setCaretPosition(doc.getLength());
}
catch(BadLocationException blexcep){}
//蓝色
StyleConstants.setForeground(textstyle,new Color(Color.blue));
doc=chat_TextArea.getDocument();
try
{
chat_TextArea.setCaretPosition(doc.getLength());
doc.insertString(doc.getLength(),"这一行是蓝色!n",textstyle);
chat_TextArea.setCaretPosition(doc.getLength());
}
catch(BadLocationException blexcep){}
}
}
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。