zoukankan      html  css  js  c++  java
  • Swing中通过按钮对表格JTable选中行对象进行上移和下移的操作

    最近经常遇到通过按钮移动表格中的行对象,百度了一下好像没看到有直接操作行的方法,只看到了移动列的方法table.moveColumn(arg0, arg1),所以自己写了一个移动行的方法

    解决思路:获取选中行的对象的单元格的值,删除选中行对象,在重新插入一行

    往上移动一行的代码如下:

    /**
    	 * 选中行往上移动一行
    	 * @author liunan
    	 * @param table 表格对象
    	 * @param model 表格模型对象
    	 * @param columnCount 表格的列数一共有多少列
    	 * */
    	public static void moveUpRow(JTable table,DefaultTableModel model,int columnCount) {
    		int row = table.getSelectedRow();
    		if (row == -1) {
    			JOptionPane.showMessageDialog(null, "请选中一行进行上移!", "提示", JOptionPane.INFORMATION_MESSAGE);
    			
    		} else if(row==0){
    			JOptionPane.showMessageDialog(null,"当前选中行已经在最顶层!", "提示", JOptionPane.INFORMATION_MESSAGE);
    			
    		}else {
    			Object[] obj=new Object[columnCount];
    			for (int i = 0; i < columnCount; i++) {
    				obj[i]=table.getValueAt(row, i);
    			}
    			model.removeRow(row);
    			model.insertRow(row - 1, obj);
    		}
    	}
    ————————————————
    版权声明:本文为CSDN博主「叮当LIU」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_36880602/article/details/106117034
    

    往下移动一行代码如下:

    /**
    	 * 选中行往下移动一行
    	 * @author liunan
    	 * @param table 表格对象
    	 * @param model 表格模型对象
    	 * @param columnCount 表格的列数一共有多少列
    	 * */
    	public static void moveDownRow(JTable table,DefaultTableModel model,int columnCount) {
    		int row = table.getSelectedRow();
    		if (row == -1) {
    			JOptionPane.showMessageDialog(null, "请选中一行进行下移!", "提示", JOptionPane.INFORMATION_MESSAGE);
    		} else if(row==table.getRowCount()-1){
    			JOptionPane.showMessageDialog(null,"当前选中行已经在最底层!", "提示", JOptionPane.INFORMATION_MESSAGE);
    		}else {
    			Object[] obj=new Object[columnCount];
    			for (int i = 0; i < columnCount; i++) {
    				obj[i]=table.getValueAt(row, i);
    			}
    			model.removeRow(row);
    			model.insertRow(row + 1, obj);
    		}
    	}
    ————————————————
    版权声明:本文为CSDN博主「叮当LIU」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_36880602/article/details/106117034
    

      


    ————————————————
    版权声明:本文为CSDN博主「叮当LIU」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_36880602/article/details/106117034

  • 相关阅读:
    PuTTY 私钥'putty/sshdss.c' 多个信息泄露漏洞
    PuTTY DSA签名远程缓冲区溢出漏洞(CVE-2013-4207)
    Apache CloudStack多个跨站脚本漏洞(CVE-2013-2136)
    phpMyAdmin 完整路径泄露漏洞3
    程序员必知的 七 种软件架构模式!
    【扩展知识】数据结构之动态内存管理机制!
    新年新气象,拼多多退出春晚红包合作,由抖音补位!
    【新年第一个程序】三子棋小游戏(C语言数组实现)
    编程开发中你必须了解的内存知识!从分配到使用直至出现Bug!
    C语言小写转大写,小写字母转换成大写字母!
  • 原文地址:https://www.cnblogs.com/wwssgg/p/14706622.html
Copyright © 2011-2022 走看看