我终于设法编写了一个从sqlite数据库中读取的小应用程序,并将结果显示在树视图中。另一种形式(在另一个模块中)提供了编写新记录或更新现有记录的能力。 写入数据库后,它会关闭窗口
我现在要做的是更新" main"窗口(包含树视图)以显示新数据集。到目前为止,我已经设法做到这一点,但是a)初始主窗口停留在那里,同时它的新实例打开,显示所需的(新)数据集。
我将如何使这项工作?有人可以给我建议/例子吗?
也许我需要说我的mainwindow模块的__init__
函数在运行时执行所有操作:创建gui,从数据库读取并显示所有内容。我怀疑这可能是问题,但几乎任何组合将其分解成碎片(功能),我没有成功
- 编辑 -
好的我有很多不同的功能 __init__
现在创建主gui,而其他人从数据库中读取数据并将其放在树视图上。
我尝试使用计时器,但此选项似乎不合适,因为 gtk.TreeView
没有这样的方法。
答案 0 :(得分:5)
最后我设法解决了这个问题,所以我将这个答案发布到我自己的问题上以防有人发现它有用:
我所要做的只是.clear
list_store,重建它并使用set_model
到TreeView。
刷新功能如下:
liststore.clear()
create_model_checks() # re-create liststore
treeView.set_model(liststore)