【问题标题】:Icon resizing jTable column调整 jTable 列大小的图标
【发布时间】:2012-10-03 08:49:16
【问题描述】:

在我的程序中,可以重新调整 jTable 的列大小。构建 jTable 时,列会自动按长度调整大小。但有时我想更改列的大小,因为当表格打印在纸上时,它更具可读性。

可以显示如下图标:。

现在调整列大小时只显示鼠标

有没有人可以做到这一点以及如何做到这一点?

表格代码:

        private JTable table;
    table = new JTable(model);
    table.setBounds(1, 1, 450, 0);
    JScrollPane scrollPane = new JScrollPane(table);
    panel_10.add(scrollPane);
    JTableHeader tableHeader = table.getTableHeader();
    tableHeader.setResizingAllowed(true);

也许是我的 DefaultTableModel 的问题?

            DefaultTableModel model = new DefaultTableModel();

        Statement stmt2 = connection.createStatement();
        ResultSet rs2 = stmt2.executeQuery("SELECT * FROM machinecodes WHERE type = '" + type +"'");

        while(rs2.next()){
       for(int i = 1; i < columns ; i++)
       {
            if(rs2.getString(1+i)==null) break;
            model.addColumn(rs2.getString(1+i));
       }
        }
        }
        else
        {
            for(int i = 1 ; i <= 25 ; i++)
                model.addColumn(i);

        }
        // Fetch each row from the result set
             while (rs.next()) {
                Object[] o = new Object[columns];
            // Get the data from the row using the column index
                for(int i = 0; i < columns ; i++)
            o[i]=rs.getString(i+1);

                            model.insertRow(0, o);
             }      

【问题讨论】:

  • 请考虑清理代码格式,它几乎不可读。 (请注意,这个网站的格式化程序不能很好地使用标签。但是,我们不应该在我们的代码中使用标签:)

标签: java swing resize icons jtable


【解决方案1】:

检索 JTableHeader 并允许调整大小:

JTable yourTable;
...
JTableHeader tableHeader = yourTable.getTableHeader();
tableHeader.setResizingAllowed(true);

【讨论】:

  • 我的桌子已经可以重新调整大小。但是是否可以在两列中间显示一个图标?
  • 调整大小的鼠标光标应该默认出现。可以发布您的代码,或者更好的 SSCCE。
  • 从发布的代码中似乎没有错。考虑发布 SSCCE:sscce.org 重现问题。
  • true 为默认值,无需显式设置 :-)
  • @kleopatra:是的,不过我误解了这个问题。我认为他在修改 DefaultTableModel 时搞砸了一些事情。也许不触发 fireTableStructureChanged 会导致这个问题?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-01
  • 2011-02-28
  • 1970-01-01
  • 2011-03-21
相关资源
最近更新 更多