AbstractTableModel实现

 愛妳yi輩zi 发布于 2023-02-13 16:02
  • php
  • 1 个回答
    • 您的代码假定JTable将按特定顺序调用您的某些方法.你不应该做出这样的假设.

      例如,该方法getRowCount()假定结果集在第一行之前,并且到最后一行计算行.如果它是第二次调用,或者如果之前调用了另一个执行相同操作的方法,getRowCount()则将开始返回0.

      将数据库访问代码与GUI代码分开.如果要显示数据库查询中的数据,请在单独的类的方法中执行查询,并使此方法返回对象列表.然后使用此对象列表构建AbstractTableModel实现.表模型不应该处理结果集.

      您的代码是使用该结果集(在的混合物getRowCount()getColumnCount()例如),以及使用由该结果集建立了一个列表(在getValueAt(),例如).在创建模型之前构建列表,然后仅在表模型实现中使用此列表.并修复getValueAt()方法:它应该是

      return list.get(rowIndex).get(columnIndex);
      

      2023-02-13 16:05 回答
    撰写答案
    今天,你开发时遇到什么问题呢?
    立即提问
    热门标签
    PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有