java swing表格按钮_java Swing表格操作

本文介绍了如何在Java Swing环境中进行表格操作,包括删除和隐藏表格列,以及弹出式添加信息的方法。提供了详细的代码示例,展示了如何通过DefaultTableModel和TableColumnModel删除列、隐藏列,以及创建新的表格用于添加信息。
摘要由CSDN通过智能技术生成

删除表格中的某一列

* 要删除列必须使用TableColumnModel界面定义的removeColumn()方法。因此我闪先由JTable类的getColumnModel

* ()方法取得

* TableColumnModel对象,再由TableColumnModel的getColumn()方法取得要删除列的TableColumn

* .此TableColumn对象当作是

* removeColumn()的参数。删除此列完毕后必须重新设置列数,也就是使用DefaultTableModel的setColumnCount

* ()方法来设置。

*/

public void actionPerformed(ActionEvent e)

{

if (e.getActionCommand().equals("delete"))

{

int columncount = defaultModel.getColumnCount() - 1;

if (columncount >= 0)// 若columncount<0代表已经没有任何列了。

{

TableColumnModel columnModel = table.getColumnModel();

TableColumn tableColumn = columnModel.getColumn(columncount);

columnModel.removeColumn(tableColumn);

defaultModel.setColumnCount(columncount);

}

}

隐藏表格中的某一列

/**

* 隐藏JTable中不需要显示的列

* @param table 需要隐藏列的JTable

* @param colIndex 需要隐藏的列的下标(JTable列下标从0开始)

*/

public static void hide(JTable table, int[] colIndex) {

DefaultTableColumnModel dcm = (DefaultTableColumnModel) table //获取列模型

.getColumnModel();

for (int i = 0; i < colIndex.length; i++) {

dcm.getColumn(colIndex[i]).setPreferredWidth(0);

dcm.getColumn(colIndex[i]).setMinWidth(0);

dcm.getColumn(colIndex[i]).setMaxWidth(0);

}

}

第二种

把model的数据移掉就行了

再fireTableRowsDeleted(row, row);

第三种

public void removeColumn(Object columnName)

{

int index = findColumn((String)columnName);

for(int i=0;i

{

Vector rowVector = (Vector)this.dataVector.get(i);

rowVector.removeElementAt(index);

}

this.columnIdentifiers.remove(columnName);

fireTableStructureChanged();

}

弹出式添加信息

public void actionPerformed(ActionEvent e) {

JFrame addFrame=new JFrame("添加计划");

String []attribute={"课程编号","班级编号","课程性质","课程名称","课时","课程性质"};

String [][]rowdata= new String[1][6];

DefaultTableModel df=new DefaultTableModel(rowdata,attribute);

JTable addTable=new JTable(df);

JScrollPane scrollPane = new JScrollPane(addTable);

addFrame.getContentPane().add(scrollPane,BorderLayout.CENTER);

addTable.setPreferredScrollableViewportSize(new Dimension(500,100));

//

//

System.out.println("addItem:");

addFrame.setLocation(100, 60);

addFrame.setVisible(true);

addFrame.pack();

addFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值