如何Add JTable 的Rows Cols? 我的意思是在创建JTable(String[] Data[][])之后如何通过mouseevent 或者keyevent来添加或者删除 rows 和cols.. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 use TableColumnModel instead 哇,看在200分的份上呵呵import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.table.*;import java.util.*;public class Test extends JFrame { private int rows=3, cols=5; private Object[] rowData = new Object[cols]; private DefaultTableModel model = new DefaultTableModel(); private JTable table = new JTable(model); public Test() { for(int c=0; c < cols; ++c) model.addColumn("Column " + Integer.toString(c)); for(int r=0; r < rows; ++r) { for(int c=0; c < cols; ++c) { rowData[c] = "(" + r + "," + c + ")"; } model.addRow(rowData); } getContentPane().add(new JScrollPane(table), BorderLayout.CENTER); getContentPane().add(new ControlPanel(), BorderLayout.NORTH); } public static void main(String args[]) { Test test=new Test(); test.setBounds(100,100,300,300); test.show(); } class ControlPanel extends JPanel { private JButton rowButton = new JButton("Add Row"), colButton = new JButton("Add Column"); public ControlPanel() { add(rowButton); add(colButton); rowButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int rowCount = model.getRowCount(); int colCount = model.getColumnCount(); if(colCount > rowData.length) rowData = new Object[colCount]; for(int c=0; c < colCount; ++c) { rowData[c] = "(" + rowCount + "," + c + ")"; } model.addRow(rowData); } }); colButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int colCount = model.getColumnCount(); model.addColumn("Column " + colCount); table.sizeColumnsToFit(-1); } }); } }} java 中接口问题 异常处理问题 看似简单,实则很绕人的堆栈问题 求一个编程证明接口中的方法默认是public的程序~~ ORACLE中存储过程的疑问 第一个java程序就出错了,请指教一下 用自己写的类加载器加载类后的问题? Jar包在Windows下与在Linux下不一样? 初学java,求一本java2的基础类库手册 20天Java学习曲线高手请指点 请问Java中如果要竖向打印文本,要用到什么类? 在线求教:关于声音!
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
import java.util.*;public class Test extends JFrame {
private int rows=3, cols=5;
private Object[] rowData = new Object[cols]; private DefaultTableModel model = new DefaultTableModel();
private JTable table = new JTable(model); public Test() {
for(int c=0; c < cols; ++c)
model.addColumn("Column " + Integer.toString(c)); for(int r=0; r < rows; ++r) {
for(int c=0; c < cols; ++c) {
rowData[c] = "(" + r + "," + c + ")";
}
model.addRow(rowData);
}
getContentPane().add(new JScrollPane(table),
BorderLayout.CENTER);
getContentPane().add(new ControlPanel(),
BorderLayout.NORTH);
}
public static void main(String args[]) {
Test test=new Test();
test.setBounds(100,100,300,300);
test.show();
}
class ControlPanel extends JPanel {
private JButton rowButton = new JButton("Add Row"),
colButton = new JButton("Add Column"); public ControlPanel() {
add(rowButton);
add(colButton); rowButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int rowCount = model.getRowCount();
int colCount = model.getColumnCount(); if(colCount > rowData.length)
rowData = new Object[colCount]; for(int c=0; c < colCount; ++c) {
rowData[c] = "(" + rowCount + "," +
c + ")";
}
model.addRow(rowData);
}
});
colButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int colCount = model.getColumnCount();
model.addColumn("Column " + colCount);
table.sizeColumnsToFit(-1);
}
});
}
}
}