Вы можете увидеть на следующем рисунке часть моего приложения. В основном JFrame
содержит, между прочим: JTable
в пределах JScrollPane
.Фон фона JTable цвет заголовка
Я установил цвет фона для обоих элементов (см. A), но где я могу установить цвет на стрелке B?
Заявлен следующим образом:
общественный класс CXPanel расширяет JPanel { частный JTablet_ao = новый JTable (ViewsModelService.getCXTableModel (0));
public CXPanel() {
GridBagConstraints c = new GridBagConstraints();
(...)
this.add(new CXSubPanel(), c);
}
public class CXSubPanel extends GamePanel {
public CXSubPanel() {
super(new GridLayout(3, 0, 0, 0));
TableScrollPane sc_ao = new TableScrollPane();
(... adding JTable to scrollpane ect...)
this.add(sc_ao);
}
}
}
Задний основной цвет устанавливается для каждой панели, scrollpane
(и его viewport
) клеток и заголовок визуализации таблицы, пример заголовка визуализатора:
public class CXHeaderRenderer extends JLabel implements TableCellRenderer {
public CXHeaderRenderer() {
this.setFont(ViewsPreferences.CX_HEADER_FONT);
this.setForeground(ViewsPreferences.CX_HEADER_COLOR);
this.setBackground(ViewsPreferences.CX_HEADER_BACKGROUND);
this.setOpaque(true);
this.setBorder(null);
this.setHorizontalAlignment(JLabel.CENTER);
this.setPreferredSize(new Dimension(ViewsPreferences.P_HEADER_WIDTH, ViewsPreferences.P_HEADER_HEIGHT));
}
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
setText(value.toString());
return this;
}
}
Для лучшей помощи подумайте о создании и публикации [Минимальной, полной и проверенной примерной программы] (http://stackoverflow.com/help/mcve). Мы не хотим видеть всю вашу программу, но вы должны сконденсировать свой код на самый маленький бит, который все еще компилируется, не имеет дополнительного кода, который не имеет отношения к вашей проблеме, но все еще демонстрирует вашу проблему. –
Выполнено, но я действительно сомневаюсь, что это помогает, поэтому я не отправил вас всех. Я не хотел иметь сообщение с бесполезным кодом, когда «цвет фона в scrollpane/panel/jtable/tableheader установлен» может возобновить его в одном предложении. – Totem
Не сделано - прочитайте или перечитайте ссылку [mcve] еще раз. Вы правы, нам не нужен полный код, но большинство здесь находят * намного легче понять проблему ** быстро **, если мы можем запустить готовый небольшой код, который показывает его нам. Если вы не получите ответ в ближайшее время, я бы посоветовал вам рассмотреть возможность написания новой программы с нуля, которая разоблачает вашу проблему во всей ее наготе, поскольку это полезный инструмент для использования, а не только для того, чтобы задавать вопросы здесь, но также для решения проблемы самостоятельно. Когда я был на вашем месте, я использовал этот инструмент и нашел его чрезвычайно полезным. –