【发布时间】:2016-08-21 12:24:46
【问题描述】:
我需要在 qt 中查看目录。创建了连接。但是当文件编辑时,发件人会发出两次目录更改信号。 filechanged 信号也同时发出。两次发射信号有什么用?有没有办法知道哪个文件/文件夹被更改了?请帮忙.. 这是连接代码
QFileSystemWatcher *watcher = new QFileSystemWatcher;
watcher->addPath("/home/user/directory/");
connect(watcher, SIGNAL(directoryChanged(QString)), this, SLOT(directoryChangedHandler(QString)));
和功能
void MainWindow::directoryChangedHandler(QString path)
{
QMessageBox::information(0, "Directory Changed", "Directory Changed at " + path);
}
【问题讨论】:
-
请在您设置连接的地方发布代码
-
添加了代码。请检查并回复我。
-
你确定这是唯一的连接语句/它所在的函数没有被调用两次吗?
-
你确定。我还有一个连接语句将 filechanged 信号连接到一个插槽。它只调用一次。尝试评论它。
-
@TimMeyer 是你否决了这个问题?如果是,请撤消该操作。我已经更新了代码对吗?我认为代码没有问题。这就是我没有包含代码的原因。