Java JTextPane

1 Java JTextPane的介绍

JTextPane是JEditorPane类的子类。JTextPane用于带有嵌入式图像和组件的样式化文档。它是可以用图形表示的属性标记的文本组件。JTextPane使用DefaultStyledDocument作为其默认模型。

2 Java JTextPane的构造方法

方法

描述

JTextPane()

创建一个新的JTextPane。

JtextPane(StyledDocument doc)

使用指定的文档模型创建一个新的JTextPane。

3 Java JTextPane的方法

方法

描述

Style addStyle(String nm, Style parent)

将新样式添加到逻辑样式层次结构中。

AttributeSet getCharacterAttributes()

获取插入符当前位置有效的字符属性,或者为null。

StyledDocument getStyledDocument()

获取与编辑器关联的模型。

void setDocument(Document doc)

将编辑器与文本文档相关联。

void setCharacterAttributes(AttributeSet attr, boolean replace)

将给定的属性应用于字符内容。

void removeStyle(String nm)

将删除先前添加到文档中的命名非空样式。

void setEditorKit(EditorKit kit)

设置了当前安装的用于处理内容的工具包。

void setStyledDocument(StyledDocument doc)

将编辑器与文本文档相关联。

4 Java JTextPane的案例

package com.yiidian;

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Container;

import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTextPane;

import javax.swing.text.BadLocationException;

import javax.swing.text.Document;

import javax.swing.text.SimpleAttributeSet;

import javax.swing.text.StyleConstants;

public class JTextPaneExample {

public static void main(String args[]) throws BadLocationException {

JFrame frame = new JFrame("JTextPane案例-一点教程网");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Container cp = frame.getContentPane();

JTextPane pane = new JTextPane();

SimpleAttributeSet attributeSet = new SimpleAttributeSet();

StyleConstants.setBold(attributeSet, true);

// Set the attributes before adding text

pane.setCharacterAttributes(attributeSet, true);

pane.setText("Welcome");

attributeSet = new SimpleAttributeSet();

StyleConstants.setItalic(attributeSet, true);

StyleConstants.setForeground(attributeSet, Color.red);

StyleConstants.setBackground(attributeSet, Color.blue);

Document doc = pane.getStyledDocument();

doc.insertString(doc.getLength(), "To Java ", attributeSet);

attributeSet = new SimpleAttributeSet();

doc.insertString(doc.getLength(), "World", attributeSet);

JScrollPane scrollPane = new JScrollPane(pane);

cp.add(scrollPane, BorderLayout.CENTER);

frame.setSize(400, 300);

frame.setVisible(true);

}

}

输出结果为:

java中jtextpane_Java JTextPane相关推荐

  1. java中实现具有传递性吗_Java中volatile关键字详解,jvm内存模型,原子性、可见性、有序性...

    一.Java内存模型 想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的. Java内存模型规定了所有的变量都存储在主内存中.每条线程中还有自己的工作内存,线程的工作 ...

  2. java中调用python

    在Java中调用Python </h1><div class="clear"></div><div class="postBod ...

  3. java中hashcode_浅谈Java中的Hash值

    1.Hash值有什么用? HashMap.HashTable.HashSet,所以涉及到使用Hash值进行优化存储的地方,都会用到HashCode.HashCode是Key,这种计算为提高计算的性能. ...

  4. JAVA中获取当前系统时间

    JAVA中获取当前系统时间 转自:http://www.cnblogs.com/Matrix54/archive/2012/05/01/2478158.html 一. 获取当前系统时间和日期并格式化输 ...

  5. Java中的对象和包

    什么是对象 对象就是实际生活中的事物,可以说一切事物都是对象. 对象的三个特点 1  对象的行为:这个对象能做什么, 例如包子是用来吃的 2  对象的状态:对象保持的一种状态,例如这个包子是热的还是凉 ...

  6. java中标识符,关键字,数据类型

    什么是标识符? 在java语言中用来给一个类,变量或方法命名的符号 标识符的命名规则 标识符可以由字母.数字.下划线(_).美元符($)组成,但不能包含 @.%.空格等其它特殊字符,不能以数字开头. ...

  7. Java中byte与16进制字符串的互相转换

    https://www.cnblogs.com/qinwangchen/p/5418028.html * Convert byte[] to hex string.这里我们可以将byte转换成int, ...

  8. JAVA中priorityqueue详解

    Java中PriorityQueue通过二叉小顶堆实现,可以用一棵完全二叉树表示.本文从Queue接口函数出发,结合生动的图解,深入浅出地分析PriorityQueue每个操作的具体过程和时间复杂度, ...

  9. 使用java中replaceAll方法替换字符串中的反斜杠

    今天在项目中使用java中replaceAll方法将字符串中的反斜杠("\")替换成空字符串(""),结果出现如下的异常: 1 java.util.regex. ...

最新文章

  1. ASP调用存储过程返回了一个参数和一个记录集时出现ADODB.Recordset 错误 '800a0e78'...
  2. signature=17cdfa42b38e299201383f4fa6ccc23f,EYE FOR FASHION
  3. 芯明天debug assertion failed_YJLV铝芯电力电缆的基本介绍
  4. AD小技巧:update changes to PCB后如何调整布线
  5. iOS原生二维码扫描白屏问题
  6. c语言全局钩子,如何编写一个全局钩子
  7. android 调色板,所不了解的Android调色板
  8. 511遇见易语言注册调用乐玩插件类模块封装
  9. 建模师的前景怎么样?
  10. tplink支持Linux的无线网卡,Ubuntu 8.04下安装TP-Link TL-WN-322G+ 1.0 无线网卡
  11. 韩语学习小技巧:怎样快速记单词
  12. 二进制转十进制快速方法
  13. openoffice和libreoffice启动和下载
  14. 耳机检测--三段式和四段式耳机判别
  15. 不知道音乐降噪如何实现?快来看看这几种音乐降噪的操作
  16. 信息收集--域内信息收集
  17. 伪装计算机主机,伪装成电脑机箱的空调究竟有多强悍?
  18. 传奇功能设置在哪里?传奇怪物爆率修改、传奇参数设置
  19. 主板定制中X86主板和ARM主板的比较
  20. 我的世界pe服务器插件制作,我的世界pe服务器连接方法 pe服务器插件大全

热门文章

  1. 【less-24】基于SQLI的二次注入
  2. 简单选择排序及其优化
  3. 不管你学的是什么专业,你都应该多少懂些管理学的...
  4. BigDecimal 常用方法
  5. CF1110E Magic Stones(构造题)
  6. 使用证书创建request请求
  7. 统计学习方法十:隐马尔科夫模型
  8. CocoaPods 基础知识--------安装 及 使用第三方库
  9. 企业信息化解决方案——插件式平台开发框架
  10. Python学习 Day 2-数据类型和变量