问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java怎么实现表格的行删除

发布网友 发布时间:2022-05-15 18:03

我来回答

3个回答

懂视网 时间:2022-05-19 11:09

实例如下:

function getRowObj(obj)

{ while(obj.tagName.toLowerCase()!="tr") // toLowerCase转化小写

 { obj=obj.parentNode; } // 得到父节点

 return obj;

}

function sc(obj) // sc为点击事件

{ var tr=this.getRowObj(obj); // 调用上面的方法

 tr.parentNode.removeChild(tr); // 得到tr的父节点table,再移除它的子节点tr

}

以上这篇删除table表格行的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

热心网友 时间:2022-05-19 08:17

java中表格的删除是通过事件监控来实现的,示例代码如下:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.table.DefaultTableModel;
//维护表格
public class JTableDefaultTableModelTest extends JFrame{

private DefaultTableModel tableModel; //表格模型对象
private JTable table;
private JTextField aTextField;
private JTextField bTextField;

public JTableDefaultTableModelTest()
{
super();
setTitle("表格");
setBounds(100,100,500,400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
String[] columnNames = {"A","B"}; //列名
String [][]tableVales={{"A1","B1"},{"A2","B2"},{"A3","B3"},{"A4","B4"},{"A5","B5"}}; //数据
tableModel = new DefaultTableModel(tableVales,columnNames);
table = new JTable(tableModel);
JScrollPane scrollPane = new JScrollPane(table); //支持滚动
getContentPane().add(scrollPane,BorderLayout.CENTER);
//jdk1.6
//排序:
//table.setRowSorter(new TableRowSorter(tableModel));
table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); //单选
table.addMouseListener(new MouseAdapter(){ //鼠标事件
public void mouseClicked(MouseEvent e){
int selectedRow = table.getSelectedRow(); //获得选中行索引
Object oa = tableModel.getValueAt(selectedRow, 0);
Object ob = tableModel.getValueAt(selectedRow, 1);
aTextField.setText(oa.toString()); //给文本框赋值
bTextField.setText(ob.toString());
}
});
scrollPane.setViewportView(table);
final JPanel panel = new JPanel();
getContentPane().add(panel,BorderLayout.SOUTH);
panel.add(new JLabel("A: "));
aTextField = new JTextField("A4",10);
panel.add(aTextField);
panel.add(new JLabel("B: "));
bTextField = new JTextField("B4",10);
panel.add(bTextField);
final JButton addButton = new JButton("添加"); //添加按钮
addButton.addActionListener(new ActionListener(){//添加事件
public void actionPerformed(ActionEvent e){
String []rowValues = {aTextField.getText(),bTextField.getText()};
tableModel.addRow(rowValues); //添加一行
int rowCount = table.getRowCount() +1; //行数加上1
aTextField.setText("A"+rowCount);
bTextField.setText("B"+rowCount);
}
});
panel.add(addButton);

final JButton updateButton = new JButton("修改"); //修改按钮
updateButton.addActionListener(new ActionListener(){//添加事件
public void actionPerformed(ActionEvent e){
int selectedRow = table.getSelectedRow();//获得选中行的索引
if(selectedRow!= -1) //是否存在选中行
{
//修改指定的值:
tableModel.setValueAt(aTextField.getText(), selectedRow, 0);
tableModel.setValueAt(bTextField.getText(), selectedRow, 1);
//table.setValueAt(arg0, arg1, arg2)
}
}
});
panel.add(updateButton);

final JButton delButton = new JButton("删除");
delButton.addActionListener(new ActionListener(){//添加事件
public void actionPerformed(ActionEvent e){
int selectedRow = table.getSelectedRow();//获得选中行的索引
if(selectedRow!=-1) //存在选中行
{
tableModel.removeRow(selectedRow); //删除行
}
}
});
panel.add(delButton);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
JTableDefaultTableModelTest jTableDefaultTableModelTest = new JTableDefaultTableModelTest();
jTableDefaultTableModelTest.setVisible(true);
}

}

热心网友 时间:2022-05-19 09:35

public class Table extends JFrame {
private JPanel jContentPane = null;
private JScrollPane jScrollPane = null;
private JTable viewtable = null;
private JButton jButton = null;
public JCheckBox checkbox = new JCheckBox("取消");
DefaultTableModel dtm = null;
String[] columnNames = { "第一列", "第二列", "第三列", "取消"};
Object[][] data = {
{ "第一列", "第二列", "第三列",checkbox },
{ "第一列", "第二列", "第三列",checkbox },
{ "第一列", "第二列", "第三列", checkbox },
{ "第一列", "第二列", "第三列", checkbox },
{ "第一列", "第二列", "第三列", checkbox } }; private JScrollPane getJScrollPane() {
if (jScrollPane == null) {
jScrollPane = new JScrollPane();
jScrollPane.setBounds(new java.awt.Rectangle(40,40,650,120));
jScrollPane.setViewportView(getViewtable());
}
return jScrollPane;
} private JTable getViewtable() {
checkbox.addActionListener(listener);
if (viewtable == null) {
viewtable = new JTable();
dtm=new DefaultTableModel(data,columnNames);
viewtable=new JTable(dtm);
viewtable.getColumn("取消").setCellRenderer(new ButtonRenderer());
viewtable.getColumn("取消").setCellEditor(
new DefaultCellEditor(checkbox));
}
return viewtable;
}

ActionListener listener = new
ActionListener() {
public void actionPerformed(ActionEvent event) {
if (checkbox.isSelected()){
dtm.removeRow(viewtable.getSelectedRow());
checkbox.setSelected(false);
}
}
};
private JButton getJButton() {
if (jButton == null) {
jButton = new JButton();
jButton.setText("删除");
jButton.setBounds(new java.awt.Rectangle(289,180,120,28));
jButton.addActionListener(new ActionListener(){
public void actionPerformed (ActionEvent e){
int numrow=viewtable.getSelectedRows().length;
for (int i=0;i<numrow;i++){
dtm.removeRow(viewtable.getSelectedRow());
}
}
});
}
return jButton;
} public static void main(String[] args) {
Table table = new Table();
table.setVisible(true);
// TODO Auto-generated method stub
} public Table() {
super();
initialize();
}

private void initialize() {
this.setSize(772, 300);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
} private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJScrollPane(), null);
jContentPane.add(getJButton(), null);
}
return jContentPane;
}
} class ButtonRenderer implements TableCellRenderer {
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
if (value == null)
return null;
return (Component) value;
}
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我女朋友我在同事面前说她是我媳妇她默认,在她组长面前就不承认了什么... 跨省迁户口需要的手续 户口跨省迁移需要哪些手续? cf空白名字怎么打(cf空白名字怎么打2021) 关于旅行的电影 就是一个人旅行放松心灵那种 不要纪录片 模拟人生2高斯的遗产给儿子还是女儿 模拟人生2如何跟高斯结婚啊? 模拟人生2高斯怎么找到贝拉,找到后能怎么办? 我的米2插上充电器后屏幕一直闪,快速的一下显示充电一下没在充电。请 ... ...屏幕乱闪 充不进去电 用手机连接电脑也是一样 在大连,从海事大学到老虎滩要怎么去,要花多少钱左右,最好有具体公车路线 去大连,住锦江之星解放路店和俄罗斯风情街店,哪家方便啊? 【问路】人在大连市西岗区新河街,想去位于西安路的图书城——长兴图书城。坐公交车怎么走?望告知。 大连滨海路从星海广场到海之韵广场距离是多少? 旅顺汽车站到老虎滩海洋公园怎么走 大连星海广场一圈多少米? 大连404路会展中心站点在哪,去南石道街方向的 急急急 2021赤峰元宝山区事业单位招聘152名工作人员笔试内容? 请问谁知道在(电脑)淘宝网上怎么安装旺旺 什么样的镜子砸不碎,要求有实物的,最好有型号或名称 家里粘牢的镜子取不下来,我想敲碎取下,但敲不碎。怎么办? 结婚镜子不能碎 用发泡胶粘镜子会碎吗 梦起飞的地方,高中新生入学演讲稿 a healthy diet 英文作文 50字 求小学六年级新生入学演讲稿,不要字数太多150字左右最好。急需!_百度... 入学的演讲稿以一篇(新的起跑线)为话题!要高一的!急急急啊! 新年祝福 写一对联,对联要求是含外国语学院的藏头,新年祝福对联? 谢谢大家 上海嘉定国玲彩印厂怎么样? 有没有朋友知道上海的印刷厂一般哪能里比较集中? 畅谈高品质的哈弗F7x如何开启“超智能静音模式”! 普鑫智能锁静音了怎么办 Java怎样把表格放在绝对定位的面板上 手机app需要更新吗知乎 三星s7edge来电时怎么智能静音 关于二次元的舞蹈叫啥 红人装极速版app要更新吗? APP需要更新吗 国务院加大财政政策力度 老旧小区改造量翻番以扩内需 智能锁有必要设置静音模式吗? APP为什么总要升级 高铁专业就业怎么样呢? 主菅养猪发展及政策力度的领导(桂林市)? 青海省惠民政策力度不断加大了吗? 广州市荔湾区人才鼓励政策力度如何? 关心关爱干部身心健康加大对什么的政策倾斜力度 我的手指弯不了!有什么办法能弯下去? 腰弯不了有什么好的治疗方法 膝盖弯曲不了,怎么办 南阳腰疼弯不了要怎么回事?