java语言JTabel浅谈

利用 JTable 类,可以以表格的形式展示数据,可设置允许用户编辑数据。JTable 本身不拥有或者缓存数据;它只是数据的视图。这里有一个放在滚动面板上的典型表格:

 

1.创建表格模型对象,其中MyTabelModel实现TableModel.

MyTabelModel model = new MyTabelModel(12, 12);

在TableModel的方法中添加返回类型

public Class<?> getColumnClass(int columnIndex) { 

return javax.swing.ImageIcon.class;

}

2.调用无参构造函数.

                JTable table = new JTable(model)

3.设置行高和列高

                //设置行高

table.setRowHeight(40);

//设置列高

for(int i=0; i<model.getColumnCount(); i++){

table.getColumnModel().getColumn(i).setPreferredWidth(40);

}

4.设置行选中和列选中

                table.setRowSelectionAllowed(false);

table.setColumnSelectionAllowed(false);

5.设置选中时边框的显示方式

table.setShowHorizontalLines(false);

table.setShowVerticalLines(false);

6.设置背景图片

                ImageIcon icon = new ImageIcon("picture/back.jpg");

JLabel lab = new JLabel(icon);

this.getLayeredPane().add(lab, new Integer(Integer.MIN_VALUE));

lab.setBounds(0,0,500, 520);

((javax.swing.JPanel)this.getContentPane()).setOpaque(false);

7.设置背景透明的方式

                        JTable table = new JTable(model){

//设置背景透明

public Component prepareRenderer(TableCellRenderer renderer,

int row, int column) {

Component component = super.prepareRenderer(renderer, row,

column);

if (component instanceof JComponent) {

((JComponent) component).setOpaque(false);

}

return component;

}

};

//设置table透明

table.setOpaque(false);

 

;