Класс QFileSystemWatcher предназначет за отслеживанием изменений в файлах и директориях.
Например:
Устанавливаем слежку за каким то файлом, передавая классу полный путь к файлу. Как только файл будет переименован, изменен или удален с жесткого диска.
Простой пример применения:
В заголовчном файле определяем наследника класса:
QFileSystemWatcher *fsWatcher;
Далле создаем тут же приватный слот, который будет срабатывать когда испустится сигнал объектом fsWatcher и на экран выведется сообщение о том, что файл изменен
private slots: void changed(const QString & flName);
Далее в файле исходников в конструкторе класса пишем следующее: //Создаем наследника fsWatcher = new QFileSystemWatcher(this); //устанавливаем слежку на файл fsWatcher->addPath("/home/alexandr/test.txt"); //Связываем сигнал со слотом, как только файл будет изменен //произойдет вызов слота changed(QString) connect(fsWatcher, SIGNAL(fileChanged(QString)), this, SLOT(changed(QString)));
//Описываем наш слот void MainWindow::changed(const QString &flName) { //В QLabel будет выведено сообщение ui->label->setText("Changed " + flName); }
|