如何通过代码更新Bound JTable

时间:2017-01-23 21:35:16

标签: java netbeans data-binding netbeans-platform

我使用Netbeans向导将JTable绑定到我的数据库。一切正常,但当我尝试更改查询和基于过滤的结果时,表停止显示新结果。

    private static void updateResults() {
        if (complaintList != null) {
            LOG.log(Level.FINE, getQuery());
            complaintList.clear();
            complaintQuery = entityManager.createQuery(getQuery())
                    .setMaxResults(1000);
            complaintList = complaintQuery.getResultList();
            LOG.log(Level.INFO, "Result size: {0}", complaintList.size());
            complaints.firePropertyChange(null, true, false);
        }
    }

其中:

  • complaintList是包含绑定到表的结果的列表。
  • complaintQuery是绑定的查询。

我确认结果的大小> 0.当我单击/移动其中一个滚动条时,表格的内容才会更新。

1 个答案:

答案 0 :(得分:0)

可能不是很漂亮,但是通过在更改后选择表格的最后一行来使其工作。

if (!complaintList.isEmpty()) {
   complaints.changeSelection(complaintList.size() - 1, 0,
              false, false);
}