关于jtable的行的问题 DataModel继承自AbsrtactTableModel,想增加一个按钮使得可以在选中的那一行下插入新的一行,按钮的事件应该怎么样写?谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 将DataModel中的数据用Vector放,添加的事件调用Vector的add(int index, Object element) 方法就可以了 便用 DefaultModel 关联这个控件是非常方便的,少了很多麻烦 public void actionPerformed(ActionEvent e) { if(e.getActionCommand().equals("增加列")) defaultModel.addColumn("增加列"); if(e.getActionCommand().equals("增加行")) defaultModel.addRow(new Vector()); if(e.getActionCommand().equals("删除列")) { 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); } } if(e.getActionCommand().equals("删除行")) { int rowcount = defaultModel.getRowCount()-1;//getRowCount返回行数,rowcount<0代表已经没有任何行了。 if(rowcount >= 0) { defaultModel.removeRow(rowcount); defaultModel.setRowCount(rowcount);//删除行比较简单,只要用DefaultTableModel的removeRow()方法即可。删除 //行完毕后必须重新设置列数,也就是使用DefaultTableModel的setRowCount()方法来设置。 } } table.revalidate(); } File类 java 数据路 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException 小弟刚学java,遇见一个初级题目.请大家指点下 用String的equals方法比较一个StringBuffer的内容是否相等? 求教Random类的nextGaussian方法 有没有简单一点的数字签名? 如何把tomcat挂在jbuilder下使用,各位高手知道吗?有无相关文档,谢谢 jb5直接打开*.java无法运行 java 从入门到精通 怎样使JAVA APPLET在一台计算机中只运行一次? 打包问题!
添加的事件调用Vector的add(int index, Object element) 方法就可以了
{
if(e.getActionCommand().equals("增加列"))
defaultModel.addColumn("增加列");
if(e.getActionCommand().equals("增加行"))
defaultModel.addRow(new Vector());
if(e.getActionCommand().equals("删除列"))
{
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);
}
}
if(e.getActionCommand().equals("删除行"))
{
int rowcount = defaultModel.getRowCount()-1;//getRowCount返回行数,rowcount<0代表已经没有任何行了。
if(rowcount >= 0)
{
defaultModel.removeRow(rowcount);
defaultModel.setRowCount(rowcount);//删除行比较简单,只要用DefaultTableModel的removeRow()方法即可。删除
//行完毕后必须重新设置列数,也就是使用DefaultTableModel的setRowCount()方法来设置。
}
}
table.revalidate();
}