Qt开发
gushangu
这个作者很懒,什么都没留下…
展开
-
鼠标在图像中选点的小软件
下载链接:链接:https://pan.baidu.com/s/1m6Gye8D92ac7QOKU-58i9A?pwd=ymem提取码:ymem软件功能: 打开图片,任意平移缩放图片,在图像中选择像素点,存储坐标,可撤销,可保存。软件样式:软件代码: 下载解压后,可在 code 目录中看到源码。 Qt 平台开发,直接把源码加进去,运行即可得此软件,欢迎随意更改升级。原创 2024-04-26 17:35:57 · 144 阅读 · 0 评论 -
QStyledItemDelegate 派生类自定义控件,遇到的程序崩溃问题
【代码】QStyledItemDelegate 派生类自定义控件,设置模型数据遇到的崩溃问题。原创 2024-04-26 13:55:48 · 209 阅读 · 0 评论 -
Qt 正则表达式匹配 百分比 % 及 中括号 []
正则表达式中,匹配中括号,使用 "\\[" 及 "\\]";匹配百分号,使用 "\\%"匹配两个数字,使用 \\d{2}那么,匹配 [89%] 这样的字符,组合起来就是"\\[\\d{2}\\%\\]"测试代码如下: QRegExp reg("\\[\\d{2}\\%\\]"); bool match = reg.exactMatch("[89%]"); if (match) { printf("OK\n"); }...原创 2022-01-14 10:11:34 · 3596 阅读 · 1 评论 -
QThread 结束后,不发射Finished问题
通常,在编写Qt程序时,一般推荐使用QThread。在使用QThread时,把处理对象移动到QThread中,连接信号槽:QThread* thread = new QThread;MyProcess* mp = new MyProcess;connect(thread, &QThread::started, mp, &MyProcess::run);connect(thread, &QThread::finished, mp, &MyProcess::de原创 2021-11-22 16:02:11 · 3249 阅读 · 2 评论 -
QTableWidget 隐藏时设置表格内容无效问题
今天遇到一个奇怪问题:我在QTableWidget处于hidden状态时,填充表格内容,然后设置为show后,表格是空白的;反复确认,内容填充是成功的,每一个item的text()也是正确的,show后就是空白的,百思不得其解;最后,只能调换了一下操作次序,先将表格设置为show,再填充内容,就是正常的了。...原创 2021-09-18 15:14:03 · 298 阅读 · 0 评论 -
QTableWidget 表头与第一行之间网格线不显示问题
表头与第一行之间应该是有网格线的,只是由于颜色问题,导致看不到网格线;设置一下表头样式,即可看到网格线:horizontalHeader()->setStyleSheet("QHeaderView::section{background:skyblue;color: black;}");...原创 2021-07-22 17:07:56 · 5806 阅读 · 0 评论 -
Qt 移除工具条后,再次添加不显示问题
当软件有很多工具条时,会有remove工具条的需求,后面需要时,再add进来。那么,先执行removeToolBar(),再执行addToolBar(),工具条是不会显示出来的;原因其实很简单,官方文档写的很清楚,remove时并并不是真的删除,只是隐藏了而已,再次add后,ToolBar依旧是隐藏状态,所以不显示void QMainWindow::removeToolBar(QToolBar *toolbar)Removes the toolbar from the main windo原创 2021-07-13 16:16:00 · 634 阅读 · 0 评论 -
QThread 应用浅析
Qt的一个普遍应用,是用于进行交互式软件开发,往往是需要多任务后台运行,以免阻塞UI界面,这就需要用到多线程,便捷的多线程实现,可以采用C++标准库 std::thread 或 boost:原创 2021-06-14 16:23:57 · 178 阅读 · 0 评论 -
Qt 实现异步队列
#pragma once#include <qqueue.h>#include <qmutex.h>#include <QwaitCondition>template<typename T>class MySynchronizedQueue{public: MySynchronizedQueue() : requestToEnd(false) , enqueueData(true) , defaultSize(1000) .原创 2021-06-04 09:35:38 · 468 阅读 · 0 评论 -
Qt 创建线程内执行的定时器 QTimer,避免阻塞主界面UI
创建一个QObject类,定义QTimer、QThread对象,将QTimer 移动到 QThread内执行class MyTimer : public QObject{ Q_OBJECTpublic: MyTimer() : timerInterval(500) { thread = new QThread(this); timer = new QTimer(); } ~MyTimer() { if (timer->isActive()) { emit原创 2021-06-02 13:09:36 · 2467 阅读 · 0 评论 -
Qt 查看本地所有IP地址
Qt 查看本地 所有IP地址void MyNetwork::checkNetwork(){ bool ethernetIpOk = false; bool wlanIpOk = false; QList<QNetworkInterface> networkInterfaces = QNetworkInterface::allInterfaces(); for (int i = 0; i < networkInterfaces.size(); i++) { QStri原创 2021-05-23 11:26:42 · 458 阅读 · 0 评论