如何在 Java 中设置 JTextPane 的样式?


如要设置 JTextPane 中文本的样式,请使用 setItalic() 或 setBold(),分别设置字体为斜体或粗体样式。

以下为我们的 JTextPane 组件 -

JTextPane pane = new JTextPane();

现在,使用 StyleConstants 类设置我们在上面创建的 JTextPane 的样式。我们还设置了背景色和前景色 -

SimpleAttributeSet attributeSet = new SimpleAttributeSet();
StyleConstants.setItalic(attributeSet, true);
StyleConstants.setForeground(attributeSet, Color.black);
StyleConstants.setBackground(attributeSet, Color.orange);
pane.setCharacterAttributes(attributeSet, true);

以下是一个设置 JTextPane 样式的示例 -

示例

package my;
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.SimpleAttributeSet;
import javax.swing.text.StyleConstants;
public class SwingDemo {
   public static void main(String args[]) throws BadLocationException {
      JFrame frame = new JFrame("Demo");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      Container container = frame.getContentPane();
      JTextPane pane = new JTextPane();
      SimpleAttributeSet attributeSet = new SimpleAttributeSet();
      StyleConstants.setItalic(attributeSet, true);
      StyleConstants.setForeground(attributeSet, Color.black);
      StyleConstants.setBackground(attributeSet, Color.orange);
      pane.setCharacterAttributes(attributeSet, true);
      pane.setText("We are learning Java and this is a demo text!");
      JScrollPane scrollPane = new JScrollPane(pane);
      container.add(scrollPane, BorderLayout.CENTER);
      frame.setSize(550, 300);
      frame.setVisible(true);
   }
}

输出

更新时间: 2019-07-30

837 次浏览

开启你的职业生涯

完成课程认证

开始
广告