我遇到了一個問題,如果我在包含JFrame的代碼的同一個java文件中使用main方法,該文件包含JTable,並且在其中將標題顏色設置爲黃色,運行它,標題將變成黃色。但是,如果我通過從其他類調用JFRame來實例化該標題,標題將不會是黃色,而是默認顏色。有沒有什麼方法可以確保顏色保持不變,即使我從其他類實例化JFrame並從而實現JTable?非常感謝!如果我沒有解釋清楚,我會很樂意澄清事情。JTable的標題中的不同顏色
嗨,我很抱歉不提供代碼事先。那就是:
EquityFrame eq= new EquityFrame(file,"Apr2012");
this.dispose();// this code is in another class of a JFrame which will call the constructor of EquityFrame class
EquityFrame類
public EquityFrame(File file, String nameTab){
createAndShowGUI(file, nameTab);
}
private void createAndShowGUI(File file, String nameTab){
//create frame
JTabbedPane tabPane= new JTabbedPane();
//pre-processing
init(file,nameTab);
//adding tabs
tabPane.addTab("Proposal", makeAdminPanel());
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame jf= new JFrame("CGH Equity Program");
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setLayout(new BorderLayout());
jf.add(tabPane,BorderLayout.CENTER);
int w = Toolkit.getDefaultToolkit().getScreenSize().width;
int h = Toolkit.getDefaultToolkit().getScreenSize().height;
jf.setSize(w, h);
jf.setVisible(true);
}
private JPanel makeAdminPanel(){
JPanel jp=new JPanel();
String[] column = {"Job Grade", "Job Title", "Min", "Midpoint", "Max",
"Lowest", "P10", "P25", "Median", "P65", "P75", "P90",
"Highest", "Average"};
String[][] data= getArrayOfValuesForEachJobGrade();
jp.setLayout(new BorderLayout());
JTable jt= new JTable(data,column);
JTableHeader th=jt.getTableHeader();
th.setBackground(java.awt.Color.pink);
th.setEnabled(false);
jt.setTableHeader(th);
jt.setEnabled(false);
jp.add(jt,BorderLayout.CENTER);
JScrollPane scrollPane = new JScrollPane(jt, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setEnabled(false);
jp.add(scrollPane, BorderLayout.CENTER);
return jp;
}
的代碼我會先運行第一個Java文件,該文件將創建EquityFrame的實例,將在它顯示了JTable中的TabbedPane。然而,我使用自己的主要方法運行EquityFrame所獲得的GUI與從另一個代碼中創建實例所獲得的GUI不同。如果我使用自己的主要方法運行它,表格的標題中將會有顏色變化。但是,如果我從另一個java類運行它,顏色仍然是默認值。
如果我運行使用的主要方法是: http://tinypic.com/r/2r5yjdj/6
如果我使用其他類調用構造函數生成JFrame中運行它: http://tinypic.com/r/3523yax/6
再次感謝爲其提供任何幫助!希望這能更清楚地解釋我的問題。
爲更好的幫助,儘早發佈一個[SSCCE](http://sscce.org/)展示您的問題的問題 – mKorbel