java 如何在JTextPane里显示不同字体?

 我来答
302652034_bai
推荐于2018-04-04 · TA获得超过4145个赞
知道大有可为答主
回答量:2206
采纳率:66%
帮助的人:1538万
展开全部
/** 
* @param str 欲插入的文本
* @param font 字体
* @param backgroup 背景色
* @param foreground 前景色
* @throws BadLocationException
*/
public void setText(String str,Font font,Color backgroup,Color foreground) throws BadLocationException{
SimpleAttributeSet set=new SimpleAttributeSet();
if(backgroup!=null)
StyleConstants.setBackground(set, backgroup);//背景色
if(foreground!=null)
StyleConstants.setForeground(set, foreground);//前景色
if(font!=null){
StyleConstants.setFontSize(set, font.getSize());//字体大小
StyleConstants.setFontFamily(set, font.getFontName());//字体名称
if(font.isBold()){//粗体
StyleConstants.setBold(set, true);
}
if(font.isItalic()){//斜体
StyleConstants.setItalic(set, true);
}
}
Document doc=this.getDocument();//或者使用JTextPanel的对象
doc.remove(0, doc.getLength());//移除所以内容,如果是添加或者插入文本,注释掉这行
doc.insertString(0, str, set);//插入字符,位置,字符串,属性集
}

用任意类继承Jtextpanel,写上这个方法。

或直接使用JTextpanel.getDocument();

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式