python - QFileSystemWatcher 不为另一个应用程序所做的更改发出 fileChanged 信号

标签 python c++ qt user-interface tcl

我正在尝试检测由另一个 tcl/python 应用程序修改的文件中的更改。 我对文件使用了 QFileSystemWatcher addPath。 它不会针对文件更改发出 fileChanged(QString) 信号。 但是,当我手动编辑这些文件时,会发出 fileChanged 信号并执行插槽。

最佳答案

检查在你的 tcl\python 程序中,你实际上使用 f.close()\f.flush()\使用 'with' 语句将数据刷新到文件。

附言 有时 python 会等到执行结束才将数据实际写入文件。如果这是这里发生的情况,则文件将不会更改,直到 tcl\python 程序结束执行,因此信号也不会在此之前发出。

关于python - QFileSystemWatcher 不为另一个应用程序所做的更改发出 fileChanged 信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44599119/

相关文章:

python - 用 Pandas 绘制多索引数据

python - 在pygame中上下移动矩形

Python 脚本不会在键盘快捷键上运行

c++ - 如何从排序的 vector 中有效地删除一个值?

c++ - 是否可以使用自定义图形引擎渲染 Qt QWidgets 和 QML?

c++ - 波普勒替代品

python - Bokeh 自定义布局

c++ - 渲染各向异性纹理的更快方法?

c++ - 公共(public)虚方法在继承类中被重写为 protected

c++ - Qt/C++中多重继承的正确方式是什么?