java jtable 单元格合并_java 表格JTable中怎么样合并单元格

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

import&nbspjava.util.*;

import&nbspjava.awt.*;

import&nbspjava.awt.event.*;

import&nbspjavax.swing.*;

import&nbspjavax.swing.table.TableColumn;

import&nbspjavax.swing.table.TableColumnModel;

import&nbspjavax.swing.table.DefaultTableModel;

import&nbspjavax.swing.table.DefaultTableColumnModel;

class&nbspDefTabMod&nbspextends&nbspDefaultTableModel{

DefTabMod&nbsp(&nbspVector>&nbspdatavec,&nbspVector&nbspColumnNameVec){

super(datavec,&nbspColumnNameVec);

}

public&nbspvoid&nbspremoveColumn(int&nbspindex){

for(int&nbspi=0;i

((Vector)dataVector.get(i)).removeElementAt(index);

}

String&nbspcolumnName&nbsp=&nbspthis.getColumnName(index);

this.columnIdentifiers.remove(columnName);

fireTableStructureChanged();

}

}

class&nbspJTableDemo&nbspextends&nbspJFrame&nbspimplements&nbspActionListener&nbsp{

String&nbspbtns[]&nbsp=&nbsp"删除行&nbsp删除列&nbsp添加行&nbsp添加列&nbsp合并&nbsp编辑".split("&nbsp");&nbsp

String&nbspcols_name[]&nbsp=&nbsp"BLUE&nbspYELLO&nbspGLASS&nbspORANGE&nbspBLACK&nbspAPPLE&nbspPINK&nbspWHITE".split("&nbsp");

Vector&nbspcols_vec&nbsp=&nbspnew&nbspVector();&nbsp//列名称向量

Vector>&nbsprow_data&nbsp=&nbspnew&nbspVector();&nbsp//主数据向量

Vector&nbspnew_vecColumns&nbsp=&nbspnew&nbspVector();&nbsp//一个新列

JButton&nbspbtn[]&nbsp=&nbspnew&nbspJButton[btns.length];

JTextField&nbsptext1&nbsp=&nbspnew&nbspJTextField(35);

JTable&nbsptable;&nbsp&nbspint&nbsprowCnt&nbsp=32;

DefTabMod&nbspdeftabmod;

JTableDemo(){&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp//========================================//

for(int&nbspi=0;i

if(i

cols_vec.addElement(cols_name[i]);

new_vecColumns.addElement(cols_name[i]);

}

Vector&nbsprowVec&nbsp=&nbspnew&nbspVector();

for(int&nbspj=0;j

String&nbspvals&nbsp=&nbsp((char)((i+65)))&nbsp+&nbspcols_name[j].toLowerCase();

rowVec.addElement(&nbspvals&nbsp);

}

row_data.addElement(rowVec);

}

JPanel&nbspnorthpan&nbsp=&nbspnew&nbspJPanel(new&nbspGridLayout(1,6)&nbsp);

for(int&nbspi=0;i

btn[i]&nbsp=&nbspnew&nbspJButton(btns[i]);btn[i].addActionListener(this);northpan.add(btn[i]);

}&nbspadd(northpan,"North");&nbsp//========================================//

deftabmod&nbsp=&nbspnew&nbspDefTabMod(row_data,cols_vec);&nbsp//装入模型

table&nbsp=&nbspnew&nbspJTable(deftabmod);&nbsp//装入JTable

add(text1,"South");

add(new&nbspJScrollPane(table,22,32),"Center");

}

public&nbspvoid&nbspactionPerformed(ActionEvent&nbspe){

String&nbspc&nbsp=&nbspe.getActionCommand();

if(c.equals("删除行")){

int&nbsprowcount&nbsp=&nbspdeftabmod.getRowCount();

if(rowcount>=0){

deftabmod.removeRow(&nbsptable.getSelectedRow()&nbsp);

}

}

if(c.equals("删除列")){

deftabmod.removeColumn(&nbsptable.getSelectedColumn()&nbsp);

}

if(c.equals("添加列")){

deftabmod.addColumn(&nbsp"Column列",&nbspnew_vecColumns&nbsp);

}

if(c.equals("添加行")){

deftabmod.insertRow(table.getSelectedRow(),new_vecColumns&nbsp);

}

}

public&nbspstatic&nbspvoid&nbspmain(String[]&nbspag){

JTableDemo&nbspblue2&nbsp=&nbspnew&nbspJTableDemo();

blue2.setDefaultCloseOperation(3);

blue2.setBounds(100,50,520,400);

blue2.setVisible(true);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值