如何使defaulttablemodel表标题加粗 [英] How to make the defaulttablemodel table header bold
本文介绍了如何使defaulttablemodel表标题加粗的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用defaulttablemodel BOLD使jtable的标头. 这是我的代码
I want to make the header of a jtable with defaulttablemodel BOLD. Here's my code
class TablePanel extends JPanel {
private String[] COLUMNS = {"FAMILY MEMBERS", "STAR (NAKSHATRA)"};
private DefaultTableModel model = new DefaultTableModel(COLUMNS, 0){
public boolean isCellEditable(int row, int column) {
return false;
}
};
DefaultTableCellRenderer centerRenderer = new DefaultTableCellRenderer(){
public void setHorizontalAlignment(int alignment) {
alignment = (int) CENTER_ALIGNMENT;
};
};
public JTable table = new JTable(model){
public void setDefaultRenderer(java.lang.Class<?> columnClass, TableCellRenderer renderer) {
columnClass= String.class;
renderer=centerRenderer;
};
public void setBackground(Color bg) {
bg = Color.yellow;
};
};
我想将列标题设置为粗体.对此的任何提示都值得赞赏
I want to make the column headers BOLD. any hint on this is appreciated
推荐答案
奇怪的是,表列标题使用与表相同的概念来呈现器...
Strangely enough, a table column header uses the same concept to renderer as the table does...
DefaultTableCellRenderer header = new DefaultTableCellRenderer();
header.setFont(header.getFont().deriveFont(Font.BOLD));
JTable table = new JTable();
TableColumnModel model = table.getColumnModel();
model.getColumn(0).setHeaderRenderer(header);
例如.但是我不认为这会变成您想要的方式...
For example. But I don't think it will turn out the way you want it to...
相反,您可以尝试类似...
Instead, you could try something like...
DefaultTableModel model = new DefaultTableModel(new Object[]{"<html><b>Happy</b></html>", "Sad"}, 0);
JTable table = new JTable(model);
这篇关于如何使defaulttablemodel表标题加粗的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文