Java 如何在运行时向JXTable添加新行?

Java 如何在运行时向JXTable添加新行?,java,swing,swingx,jxtable,Java,Swing,Swingx,Jxtable,我正在使用JXTable显示记录列表 当我单击“刷新”按钮时,我希望JXTable被刷新以显示新插入的记录 而且,当我单击“添加新行”按钮时,必须将新行添加到JXTable 我该怎么做?我找不到任何有用的参考资料或样品。请指导我。它的工作原理与常规的JTable相同,这在中有详细说明。但要回答你的问题: 不需要“刷新”按钮,除非“刷新”按钮更新了TableModel。在更新TableModel时,应触发相应的事件,以便JTable知道对模型所做的更改。此时,JTable将自动刷新。如果您的

我正在使用JXTable显示记录列表

  • 当我单击“刷新”按钮时,我希望JXTable被刷新以显示新插入的记录

  • 而且,当我单击“添加新行”按钮时,必须将新行添加到JXTable


我该怎么做?我找不到任何有用的参考资料或样品。请指导我。

它的工作原理与常规的
JTable
相同,这在中有详细说明。但要回答你的问题:

  • 不需要“刷新”按钮,除非“刷新”按钮更新了
    TableModel
    。在更新
    TableModel
    时,应触发相应的事件,以便
    JTable
    知道对模型所做的更改。此时,
    JTable
    将自动刷新。如果您的
    TableModel
    是从
    DefaultTableModel
    扩展而来,那么已有一些方法可以处理这些事件(例如
    insertRow
  • 插入一行意味着向
    表格模型添加一行
    +触发适当的事件。如果使用的是
    DefaultTableModel
    ,则可以使用
    DefaultTableModel

它的工作原理与常规
JTable
的工作原理相同,这一点在中有详细说明。但要回答你的问题:

  • 不需要“刷新”按钮,除非“刷新”按钮更新了
    TableModel
    。在更新
    TableModel
    时,应触发相应的事件,以便
    JTable
    知道对模型所做的更改。此时,
    JTable
    将自动刷新。如果您的
    TableModel
    是从
    DefaultTableModel
    扩展而来,那么已有一些方法可以处理这些事件(例如
    insertRow
  • 插入一行意味着向
    表格模型添加一行
    +触发适当的事件。如果使用的是
    DefaultTableModel
    ,则可以使用
    DefaultTableModel

更新表模型类实例,它将通知表视图实例并刷新。JTable是根据MVC设计模式实现的,JTable表示为视图,但显示的数据是“模型”。更新“模型”,它将通知“视图”组件。@Rafael Osipov:感谢您的回复。仅供参考。我使用的是JxTable,而不是JTable.AFAIK,它是JTable的扩展版本,主要概念是相同的。更新表模型类实例,它将通知表视图实例并刷新它。JTable是根据MVC设计模式实现的,JTable表示为视图,但显示的数据是“模型”。更新“模型”,它将通知“视图”组件。@Rafael Osipov:感谢您的回复。仅供参考。我使用的是JxTable而不是JTable.AFAIK,它是JTable的扩展版本,其主要概念是相同的。