You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PySide2:如何通过按钮清空QTableView并销毁关联模型

实现QTableView模型销毁与清空显示

步骤1:绑定按钮点击信号

给clear_button绑定点击事件到自定义槽函数:

self.clear_button.clicked.connect(self.on_clear_table)

步骤2:编写清空逻辑的槽函数

在槽函数中完成模型解绑、视图清空和模型销毁:

def on_clear_table(self):
    # 将视图模型设为None,直接清空显示内容
    self.output_list.setModel(None)
    # 解除原模型引用,触发垃圾回收销毁模型
    if self.model is not None:
        self.model.deleteLater()  # 让Qt事件循环安全销毁对象
        self.model = None

关键说明

  • QTableView设置setModel(None)后会自动清空所有行、列的显示,无需额外处理。
  • deleteLater()是Qt推荐的对象销毁方式,确保对象在合适时机被清理,避免内存泄漏;Python环境下如果没有其他引用,仅置空self.model也能通过GC完成销毁,但结合deleteLater()更稳妥。

内容的提问来源于stack exchange,提问作者ghost654

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 00:42:54