如何在 Java 中为 JTextPane 设置默认背景色?


若要设置 JTextPane 的默认背景色,请使用 SimpleAttributeSet 和 StyleConstants 类。首先,创建一个新的 JTextPane –

JTextPane pane = new JTextPane();

现在,使用这些类设置样式和颜色 –

SimpleAttributeSet attributeSet = new SimpleAttributeSet();
StyleConstants.setBackground(attributeSet, Color.white);

现在,将该设置应用于该面板 –

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 textPane = new JTextPane();
      textPane.setBackground(Color.cyan);
      SimpleAttributeSet attributeSet = new SimpleAttributeSet();
      StyleConstants.setItalic(attributeSet, true);
      StyleConstants.setForeground(attributeSet, Color.blue);
      StyleConstants.setBackground(attributeSet, Color.white);
      textPane.setCharacterAttributes(attributeSet, true);
      textPane.setText("Updated the background color of the text pane.");
      JScrollPane scrollPane = new JScrollPane(textPane);
      container.add(scrollPane, BorderLayout.CENTER);
      frame.setSize(550, 300);
      frame.setVisible(true);
   }
}

输出

更新于: 2019 年 7 月 30 日

748 次浏览

开启你的 职业生涯

完成课程即可获得认证

开始
广告