Java文本框内文字显示不同颜色、字号等属性【函数调用一键实现】

简介:

 

Hello!你好哇,我是灰小猿!

最近在做聊天室相关项目的开发的时候,需要对文本框中的字体进行区别显示,但是由于JTextArea文本框属于纯文本形式的,无法对其中的文本进行不同格式的显示,所以这个时候就需要使用JTextPane文本域进行文本内容的显示了。

其主要原因是:

JTextPane文本域中可以设置html样式

JTextArea文本框不可以设置html样式

这就造成了JTextPane文本域中的内容可以根据需要自行设置属性,从而实现不同文字内容的颜色、字号等属性。

通过以下函数可以直接对JTextPane文本域中的内容进行写入,其中传入的参数分别是:“写入文本框的内容、字体颜色、是否粗体、字号”,JTextPane文本域布局完成后,直接调用该函数就可对文本写入,

函数代码中的

Document doc = infoWindow.getDocument();

中的infoWindow为JTextPane文本域的名称,调用函数时注意修改!

以下为该函数源码:

//设置接收框文本字体属性
public void setInfoWindosFont(String str, Color col,boolean bold,int fontSize) {
  SimpleAttributeSet attrSet = new SimpleAttributeSet();
  StyleConstants.setForeground(attrSet, col);//设置颜色
  if (bold) {
    StyleConstants.setBold(attrSet, bold);//设置粗体
  }
  StyleConstants.setFontSize(attrSet, fontSize);//设置字号
  /*********infoWindow为JTextPane文本域的名称*****************/
  Document doc = infoWindow.getDocument();  
  str = "\n" + str;
  try {
    doc.insertString(doc.getLength(), str, attrSet);
  } catch (BadLocationException e) {
    // TODO Auto-generated catch block
    //e.printStackTrace();
    JOptionPane.showMessageDialog(null, "字体设置错误!", "提示", JOptionPane.ERROR_MESSAGE);  
  }
}

image.gif

显示效果:

image.gif编辑

觉得有用记得点赞关注哟!

大灰狼陪你一起进步!

image.gif编辑

目录
相关文章
|
15天前
|
移动开发 前端开发 Java
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
JavaFX是Java的下一代图形用户界面工具包。JavaFX是一组图形和媒体API,我们可以用它们来创建和部署富客户端应用程序。 JavaFX允许开发人员快速构建丰富的跨平台应用程序,允许开发人员在单个编程接口中组合图形,动画和UI控件。本文详细介绍了JavaFx的常见用法,相信读完本教程你一定有所收获!
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
|
1月前
|
JSON 前端开发 JavaScript
Java属性为什么不能是is开头的boolean
在Java实体类中,阿里规约要求boolean属性不应以is开头。文章通过实际案例分析了isUpdate字段在JSON序列化过程中变为update的问题,并提供了自定义get方法或使用@JSONField注解两种解决方案,建议遵循规约避免此类问题。
Java属性为什么不能是is开头的boolean
|
3月前
|
Java 数据安全/隐私保护
Java ffmpeg 实现视频加文字/图片水印功能
【10月更文挑战第22天】在 Java 中使用 FFmpeg 实现视频加文字或图片水印功能,需先安装 FFmpeg 并添加依赖(如 JavaCV)。通过构建 FFmpeg 命令行参数,使用 `drawtext` 滤镜添加文字水印,或使用 `overlay` 滤镜添加图片水印。示例代码展示了如何使用 JavaCV 实现文字水印。
223 1
|
3月前
|
Java
让星星⭐月亮告诉你,Java NIO之Buffer详解 属性capacity/position/limit/mark 方法put(X)/get()/flip()/compact()/clear()
这段代码演示了Java NIO中`ByteBuffer`的基本操作,包括分配、写入、翻转、读取、压缩和清空缓冲区。通过示例展示了`position`、`limit`和`mark`属性的变化过程,帮助理解缓冲区的工作原理。
41 2
|
3月前
|
存储 算法 Java
java制作海报六:Graphics2D的RenderingHints方法参数详解,包括解决文字不清晰,抗锯齿问题
这篇文章是关于如何在Java中使用Graphics2D的RenderingHints方法来提高海报制作的图像质量和文字清晰度,包括抗锯齿和解决文字不清晰问题的技术详解。
94 0
java制作海报六:Graphics2D的RenderingHints方法参数详解,包括解决文字不清晰,抗锯齿问题
|
3月前
|
算法 搜索推荐 Java
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
这篇文章介绍了如何使用Java后端技术,结合Graphics2D和Echarts等工具,生成包含个性化信息和图表的海报,并提供了详细的代码实现和GitHub项目链接。
165 0
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
|
3月前
|
Java
Java 集合存在相同属性,其他元素累加
Java 集合存在相同属性,其他元素累加
38 0
|
4月前
|
Java 编译器 测试技术
|
7月前
|
存储 缓存 Java
探索 Java 中 `Class.java` 的属性与方法
探索 Java 中 `Class.java` 的属性与方法
|
7月前
|
Java Maven
java运行jar包提示 “XXX中没有主清单属性”,配置maven插件
java运行jar包提示 “XXX中没有主清单属性”,配置maven插件