我正在创建的程序的一部分是一个不可编辑的文本区域,它提供信息和超链接。我是用JEditorPane做的,但是我想改变默认白色的背景颜色。我在网上搜索过解决方案,但我能找到的唯一一个是JTextPanes,其中一些使用的方法不适用于编辑器窗格。这是我用来创建界面的类,使用GroupLayout。
public class MainViewDisplay extends JFrame {
JEditorPane editorPane;
JScrollPane jScrollPane;
public MainViewDisplay() {
this.initComponents();
}
private void initComponents() {
jScrollPane = new javax.swing.JScrollPane();
editorPane = new javax.swing.JEditorPane();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
editorPane.setEditable(false);
editorPane.setBackground(Color.BLACK);
jScrollPane.setViewportView(editorPane);
GroupLayout layout = new GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane, GroupLayout.DEFAULT_SIZE, 521, Short.MAX_VALUE)
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane, GroupLayout.DEFAULT_SIZE, 336, Short.MAX_VALUE)
.addContainerGap())
);
pack();
}
}
由于某种原因,setBackground()
方法在程序运行时不会改变颜色。还有另一种方法吗?