随笔分类 -  Qt系列

摘要:Qt同步线程 我们知道,多线程有的时候是很有用的,但是在访问一些公共的资源或者数据时,需要进行同步,否则会使数据遭到破坏或者获取的值不正确。Qt提供了一些类来实现线程的同步,如QMutex,QMutexLocker,QReadWriteLock,QReadLocker,QWriteLocker,QS 阅读全文
posted @ 2019-07-30 03:45 狂奔~
摘要:uic user interface complieruic mainwindow.ui >> ui_mainwidow.h 阅读全文
posted @ 2019-07-27 01:10 狂奔~
摘要:https://blog.csdn.net/taiyang1987912/article/details/29271549 阅读全文
posted @ 2019-07-17 16:07 狂奔~
摘要:qDeleteAll:专门用于指针容器,对容器或者迭代器中的每个对象进行delete操作,而不是从容器中移除对象。源代码如下: 测试代码如下: `` 运行结果发现,不调用qDeleteAll`的情况下,程序占内存78M;加上之后,只占内存12M。但是前后的size没有变化。 当T的类型为指针时,调用 阅读全文
posted @ 2019-07-17 16:06 狂奔~
摘要:QPointer (4.0) 已经过时,可以被QWeakPointer所替代,它不是线程安全的。 QSharedDataPointer (4.0) -- 提供对数据的COPY-ON-WRITE以及浅拷贝,提供对数据(而不是指向数据的指针)的线程安全的保护。(注:提供对数据的线程安全保护要结合Qsha 阅读全文
posted @ 2019-07-17 16:04 狂奔~
摘要:菜单栏->工具-> 选项->构建与运行->构建套件->点击自动检测内容->在同一页面找到 Environment ->点击change ->在弹出的窗口 添加MAKEFLAGS=-j4 即可 -j4 :表示cup四个核数加入编译 阅读全文
posted @ 2019-07-14 11:26 狂奔~
摘要:msconfig msconfig即系统配置实用程序,是Microsoft System Configuration的缩写。是在开始菜单里运行中输入然后确认就可以找到程序开启或者禁用, 可以帮助电脑禁止不需要运行的程序,这样可以加快你的电脑运行。 windows注册表解析说明 注册表被称为Windo 阅读全文
posted @ 2019-07-07 16:45 狂奔~
摘要:简介 QSettings类提供了持久的跨平台应用程序设置。 用户通常期望应用程序记住它的设置(窗口大小、位置等)所有会话。这些信息通常存储在Windows系统注册表,OS X和iOS的属性列表文件中。在Unix系统中,在缺乏标准的情况下,许多应用程序(包括KDE应用程序)使用INI文本文件。 QSe 阅读全文
posted @ 2019-07-07 16:31 狂奔~
摘要:第一种INI配置文件 .ini 文件是Initialization File的缩写,即初始化文件。 除了windows现在很多其他操作系统下面的应用软件也有.ini文件,用来配置应用软件以实现不同用户的要求。一般不用直接编辑这些.ini文件,应用程序的图形界面即可操作以实现相同的功能。它可以用来存放 阅读全文
posted @ 2019-07-07 12:37 狂奔~
摘要:我用的qt5.10+VS2017,2013应该一样项目属性里手动添加包含目录:(QTDIR)\include\QtWebEngineWidgets,(QTDIR)\include\QtWebChannel 附加依赖项:Qt5WebEngineWidgetsd.lib, Qt5WebChanneld. 阅读全文
posted @ 2019-07-06 15:25 狂奔~
摘要:参考:Qt4 开发实践第八章 图形视图QGraphicsView 实现蝴蝶飞舞 阅读全文
posted @ 2019-06-26 11:13 狂奔~
摘要:首先需要注意的是:QMutexLocker这个类是基于QMutex的便利类,这个类不能够定义 私有成员变量 和 全局变量,只能够定义局部变量来使用。 使用方法:(1)先定义一个QMutex类的变量 QMutex m_mutex; (可以是私有成员变量,也可以是全局变量) (2) 在定义一个QMute 阅读全文
posted @ 2019-06-24 17:38 狂奔~
摘要:1.一般我们的事件循环都是由exec()来开启的,例如下面的例子: 这些都开启了事件循环,事件循环首先是一个无限“循环”,程序在exec()里面无限循环,能让跟在exec()后面的代码得不到运行机会,直至程序从exec()跳出。从exec()跳出时,事件循环即被终止。QEventLoop::quit 阅读全文
posted @ 2019-06-24 17:30 狂奔~
摘要:#include "mainwindow.h" #include "ui_mainwindow.h" #include #include #include #include #include #include #include #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)... 阅读全文
posted @ 2019-06-23 22:49 狂奔~
摘要:QPixmap::grapWindow(winID) 存放一个图片QDesktopWidget 获得当前程序所在窗口id pid每个窗口有winID() // 3pixmap scaled 比例缩放 QClipboard 操作系统剪切版 m_pic = QPixmap::grabWindow(w.w 阅读全文
posted @ 2019-06-23 22:29 狂奔~
摘要:Qt 提供了四种进程间通信的方式: 4.QCOP(Qt COmmunication Protocol):QCOP 是 Qt 内部的一种通信协议,用于不同的客户端之间在同一地址空间内部或者不同的进程之间的通信。目前,这种机制只用于 Qt for Embedded Linux 版本。 http://ww 阅读全文
posted @ 2019-06-22 11:09 狂奔~
摘要:https://blog.csdn.net/liji_digital/article/details/70547082 线程间的通讯可以由QSemaphore调控,以保证各个线程对同一资源的访问不冲突。 但是进程间的协调就不能利用QSemaphore,而要利用QSystemSemaphore。 此外 阅读全文
posted @ 2019-06-21 11:57 狂奔~
摘要:QIODevice做为QLocalSocket的父类 在Qt中,提供了多种IPC方法。看起来好像和Socket搭上点边,实则底层是windows的name pipe。这应该是支持双工通信的 QLocalServer提供了一种基于本地套接字的服务器,实现了接收本地socket的连接的功能。 通过调用l 阅读全文
posted @ 2019-06-21 11:24 狂奔~
摘要:Qt提供了一种安全的共享内存的实现QSharedMemory,以便在多线程和多进程编程中安全的使用。比如说QQ的聊天的客户端,这里有个个性头象,当点击QQ音乐播放器的时候,启动QQ音乐播放器(启动一QQ音乐播放器的进程)这时QQ音乐播放器里也有一个个性头像,这两者间的头像一样,现用共享内存的方法实现 阅读全文
posted @ 2019-06-20 19:58 狂奔~
摘要:需求: 在动态库中创建一个窗口句柄,可以给外部调用,库的调用者,通过这个句柄发送消息到底层库,库里面可以实现对消息的处理 m_FHandle=AllocateHWnd(WndProcDllMsg); // windows 1,动态库编写部分 .pro 工程文件 头文件handlemag.h hand 阅读全文
posted @ 2019-06-20 15:48 狂奔~