代码之家  ›  专栏  ›  技术社区  ›  julliiie

删除jtable的列数

  •  0
  • julliiie  · 技术社区  · 6 年前

    你知道是否可以编辑一个有6列的jtable吗?

    column = jTableMus.getColumnModel().getColumn(0);
            column.setPreferredWidth(50);
            column = jTableMus.getColumnModel().getColumn(1);
            column.setPreferredWidth(150);
            column = jTableMus.getColumnModel().getColumn(2);
            column.setPreferredWidth(100);
            column = jTableMus.getColumnModel().getColumn(3);
            column.setPreferredWidth(80);
            column = jTableMus.getColumnModel().getColumn(4);
            column.setPreferredWidth(50);
            column = jTableMus.getColumnModel().getColumn(5);
    

    实际上,我想知道如何更改4列而不是6列。

    谢谢你的回答。

    1 回复  |  直到 6 年前
        1
  •  1
  •   camickr    6 年前

    如果要控制哪些列是可编辑的,可以重写 isCellEditable(...) 方法 TableModel

    因此,要只编辑前4列,可以执行以下操作:

    @Override
    public Boolean isCellEditable(int row, int column)
    {
        return (column < 4) ? true : false;
    }
    

    编辑:

    我想删除2列

    两种不同的方式。可以使用以下命令删除列:

    1. getColumn(...) removeColumn(...) 方法来自 JTable 应用程序编程接口。
    2. getColumn(…) 删除列(…) 方法来自 TableColumnModel 美国石油学会

    您使用的方法将取决于您是否要基于列的索引或列名称删除列。