我想将蓝色背景颜色更改为taskpanecontainer的白色。我用过下面这行但没有任何影响。
UIManager.put("TaskPaneContainer.background", Color.LIGHT_GRAY);
请给我一些改变bg颜色的想法。
public class NewJFrame2 extends javax.swing.JFrame {
public NewJFrame2() {
initComponents();
setSize(462, 300);
add(doInit());
setBackground(Color.WHITE);
}
private Component doInit() {
JXTaskPaneContainer taskpanecontainer = new JXTaskPaneContainer();
//taskpanecontainer.setLayout(new VerticalLayout(2));
JXTaskPane taskpane1 = new JXTaskPane();
taskpane1.setTitle("First TaskPane");
JXTable table = new JXTable();
DefaultTableModel model = new DefaultTableModel();
model.addColumn("ParameterName");
model.addColumn("ParameterType");
model.addColumn("Operation");
model.addRow(new Object[]{"Request", "String", "Delete"});
model.addRow(new Object[]{"Request", "String", "Delete"});
table.setModel(model);
((JComponent) taskpane1.getContentPane()).setBorder(BorderFactory.createEmptyBorder(0,5,0,5));
taskpane1.add(table);
taskpanecontainer.add(taskpane1);
taskpanecontainer.setBorder(javax.swing.BorderFactory.createEmptyBorder(0,0,0,0));
return taskpanecontainer;
}
}
我正在分享图片,所以我已经清除了你的想法..
由于
答案 0 :(得分:5)
与往常一样,LAF可能不会尊重背景属性。那是f.i. Win中的taskpaneContainer的情况:它使用(Swingx!)画家填充其背景。所以要提供的属性是
UIManager.put("TaskPaneContainer.backgroundPainter", new MattePainter(Color.RED));
答案 1 :(得分:0)
接下来的事情很简单,对我来说就像一个魅力:
taskPaneContainer.setBackground(Color.WHITE);
taskPaneContainer.setBackgroundPainter(null);