JTable是Swing程式設計中很常用的控制項

2021-05-01 04:16:21 字數 2905 閱讀 5473

jtable是swing程式設計中很常用的控制項,這裡總結了一些常用方法以備查閱. 一.建立**控制項的各種方式: 1) 呼叫無參建構函式. jtable table = new jtable(); 2) 以表頭和表資料建立**. object celldata = ,}; string c

jtable是swing程式設計中很常用的控制項,這裡總結了一些常用方法以備查閱.

一.建立**控制項的各種方式:

1)  呼叫無參建構函式.

jtable table = new jtable();

2)  以表頭和表資料建立**.

object celldata = ,};

string columnnames = ;

jtable table = new jtable(celldata, columnnames);

3)  以表頭和表資料建立**,並且讓表單元格不可改.

string headers = ;

object celldata = null;

defaulttablemodel model = new defaulttablemodel(celldata, headers) };

table = new jtable(model);

二.對**列的控制

1) 設定列不可隨容器元件大小變化自動調整寬度.

table.setautoresizemode(jtable.auto_resize_off);

2) 限制某列的寬度.

tablecolumn firsetcolumn = table.getcolumnmodel().getcolumn(0);

firsetcolumn.setpreferredwidth(30);

firsetcolumn.setmaxwidth(30);

firsetcolumn.setminwidth(30);

3) 設定當前列數.

defaulttablemodel tablemodel = (defaulttablemodel) table.getmodel();

int count=5;

tablemodel.setcolumncount(count);

4) 取得**列數

int cols = table.getcolumncount();

5) 新增列

defaulttablemodel tablemodel = (defaulttablemodel) table.getmodel();

tablemodel.addcolumn("新列名");

6) 刪除列

table.removecolumn(table.getcolumnmodel().getcolumn(columnindex));// columnindex是要刪除的列序號

三.對**行的控制

1) 設定行高

table.setrowheight(20);

2) 設定當前航數

defaulttablemodel tablemodel = (defaulttablemodel) table.getmodel();

int n=5;

tablemodel.setrowcount(n);

3) 取得**行數

int rows = table.getrowcount();

4) 新增**行

defaulttablemodel tablemodel = (defaulttablemodel) table.getmodel();

tablemodel.addrow(new object);

5) 刪除**行

defaulttablemodel tablemodel = (defaulttablemodel) table.getmodel();

model.removerow(rowindex);// rowindex是要刪除的行序號

四.訪問**單元格的資料

1) 取單元格資料

defaulttablemodel tablemodel = (defaulttablemodel) table.getmodel();

string cellvalue=(string) tablemodel.getvalueat(row, column);// 取單元格資料,row是行號,column是列號

2) 填充資料到**.

注:資料是member型別的鍊錶,member類如下:

public class member

填充資料的**:

public void filltable(listmembers)

// 更新**

table.invalidate();

}2) 取得**中的資料

public listgetshowmembers()

2) 取得使用者所選的多行

int selectrows=table.getselectedrows().length;// 取得使用者所選行的行數

defaulttablemodel tablemodel = (defaulttablemodel) table.getmodel();

if(selectrows>1)

int selrowindexs=table.getselectedrows();// 使用者所選行的序列

for(int i=0;i六.新增**的事件處理

view.gettable().addmouselistener(new mouselistener()

public void mousereleased(mouseevent e)

public void mouseentered(mouseevent e)

public void mouseexited(mouseevent e)

public void mouseclicked(mouseevent e)

});

Swing 控制項 JTable(二)

jtable 一 一 獲取jtable選中的行 列 int row table.getselectedrow int column table.getselectedcolumn 二 獲取jtable指定行列的資料object o table.getvalueat int row,int colum...

Swing之JTable篇表列更改監聽

精品導航 http www.nitaomei.com tablecolumnmodellistener 定義偵聽 tablecolumnmodel 中更改的物件的介面。columnadded tablecolumnmodelevent e 告知偵聽器有一列被新增到模型中。void columnmar...

Swing程式設計

1.常用窗體 元件的承載體 jframe 是swing程式中各個元件的載體,可以將其看作是承載這些swing元件的容器,擁有最大化 最小化 關閉等按鈕。jframe物件建立完成後,需要呼叫getcontentpane 方法將窗體轉換為容器,使用container.add 新增元件 jdialog 是...