使用QFileSystemWatcher来监视指定目录,具体使用方法如下:
(1)在头文件“watcher.h”中,Watcher类继承自QWidget类,其具体内容如下:

#include <QWidget>
#include <QLabel>
#include <QFileSystemWatcher>
class Watcher : public QWidget
{
Q_OBJECT
public:
Watcher(QWidget *parent = 0);
~Watcher();
public slots:
void directoryChanged(QString path);
private:
QLabel *pathLabel;
QFileSystemWatcher fsWatcher;
};

(2)源文件“watcher.cpp”的具体内容如下:

#include "watcher.h"
#include <QVBoxLayout>
#include <QDir>
#include <QMessageBox>
#include <QApplication>
Watcher::Watcher(QWidget *parent)
: QWidget(parent)
{
QStringList args=qApp->arguments();
QString path;
if(args.count()>1)
{
path=args[1];
}
else
{
path=QDir::currentPath();
}
pathLabel = new QLabel;
pathLabel->setText(tr("监视的目录:")+path);
QVBoxLayout *mainLayout = new QVBoxLayout(this);
mainLayout->addWidget(pathLabel);
fsWatcher.addPath(path);
connect(&fsWatcher,SIGNAL(directoryChanged(QString)),
this,SLOT(directoryChanged(QString)));
}

响应函数directoryChanged()使用消息对话框提示用户目录发生了改变,具体实现代码如下:

void Watcher::directoryChanged(QString path)
{
QMessageBox::information(NULL,tr("目录发生变化"),path);
}

运行结果如下图所示:

QT学习:监视文件和目录变化相关推荐

  1. 【Qt】监视文件和目录的修改:QFileSystemWatcher

    一.说明 QFileSystemWatcher用于监视指定文件或目录列表的更改. 注意:监视文件或目录时需要打开相应的文件描述符,因此被监视的文件或目录数据是有限的,受系统允许的文件描述符数据等限制. ...

  2. Linux学习——Linux文件与目录管理

    Linux学习--Linux文件与目录管理 实验内容 实验目的 实验指导 实验内容 练习Linux文件和目录操作命令. 实验目的 掌握文件与目录管理命令 掌握文件内容查阅命令 实验指导 文件与目录管理 ...

  3. python监控目录变化_如何用python语言监控文件或目录变化

    本文python语言实例实现的功能是监控一个文件或目录的变化,如果有变化,把文件上传备份至备份主机,并且要监控上传过程是否有问题等,具体内容如下,希望对大家学习python语言有所帮助.#!/usr/ ...

  4. python监控文件或目录变化

    我们经常会遇到监控一个文件或目录的变化,如果有变化,把文件上传备份至备份主机,并且我们还要监控上传过程是否有问题等,根据此需求,查阅了相关的一些材料,编写如下脚本实现这个功能: #!/usr/bin/ ...

  5. linux系统命令学习系列-文件和目录管理

    复习上节内容: 1. 定时执行任务命令crontab –e, crontab –l,crontab –r 2. 作业:定义一个定时任务,每分钟向/tmp/test.txt文件输出hello world ...

  6. Linux学习记录-文件、目录与磁盘

    用户和群组 用户和群组主要是为了区分用户对文件的操作权限. 账号在/etc/passwd 个人密码在/etc/shadow 组信息在/etc/group 不要乱动这3个文件 文件权限和目录配置 文件属 ...

  7. Linux 学习笔记 文件、目录操作与用户群组权限

    一.命令行提示符 1.1 命令行基础 bearpi:当前用户名,在@前是用户名 ubuntu:用户所在的域名,在@后面,这是我自定义的,默认应该是主机名 ~ 波浪线为目前所在目录,~代表家目录(hom ...

  8. Qt学习:文件介绍+对象树+信号和槽

    Qt. 文章目录 Qt. 1.qr的优点 2.成功案例 3.QWidget.QMainWindow和QDialog之间的关系 4.mian.cpp文件 5..pro文件 6..h文件 7.命名规范+快 ...

  9. 跟我学习php文件和目录常用函数-下篇

    在讲这些函数前,我先给大家说明一下.因为是了解函数的常用用法,因此会将某些函数的上下文content参数省略,以方便大家更轻松更快的掌握函数用法.我后面也会有对上下文的讲解,敬请期待哦 1> b ...

最新文章

  1. 我的android绘图学习笔记(二)
  2. SSM实现学生宿舍管理系统
  3. 福师计算机导论在线作业一,福师《计算机导论》在线作业一..doc
  4. JDBC连接为什么要释放资源---------示意图
  5. spring boot 全局异常处理的实现(@ExceptionHandler),以及@InitBinder、@ModelAttribute的作用
  6. angular中注入依赖(分页功能)。。。
  7. usr/sbin/inetd
  8. 双目摄像头和单目摄像头_挑战激光雷达,MAXIEYE要重新定义单目摄像头?
  9. ASA防火墙IPSEC ***配置
  10. 什么是seo外链工具
  11. CleanMyMac X的免费版电脑系统瘦身工具
  12. Launcher中动态加载APK出现java.lang.SecurityException异常的解决方法(二)
  13. 图片不变形,按照等比例缩小或扩大显示
  14. 用CSS实现设置网页文字为只读,不可复制的方法
  15. landesk桌面管理
  16. 什么是工作流?(转贴)
  17. PHP云任务Q助手Tools程序源码+多功能
  18. javase(13)_网络编程
  19. Spring 揭秘之Spring AOP一世(2)织入实现
  20. 为啥IEEE754浮点数尾数用原码不用补码?

热门文章

  1. 今日arXiv精选 | 近期必读的5篇Transformers相关论文
  2. NLP、CV、ML全覆盖,这份私藏论文清单你一定要看看
  3. 商汤科技 中科院自动化所:视觉跟踪之端到端的光流相关滤波 | CVPR 2018
  4. HDU1878 欧拉回路
  5. obs 推流编码在哪设置_OBS录屏软件
  6. 03 | AOF 日志:宕机了, Redis 如何避免数据丢失?
  7. com.netflix.zuul.exception.ZuulException: Hystrix Readed time out
  8. JAVA 通过URL 获取页面内容
  9. PHP——访问网站根目录解决方案
  10. 2019黑龙江大学程序设计竞赛