自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 六十一、QT之信号与lambda槽函数

一、函数原型 inline QMetaObject::Connection QObject::connect(const QObject *asender, const char *asignal, const char *amember, Qt::ConnectionType atype) 二...

2020-05-31 08:57:14 2 0

转载 六十、SQL server分页的四种方法

参见 SQL server分页的四种方法(算很全面了)

2020-05-24 12:05:17 23 0

原创 五十九、Qt之连接 sql server 2008数据库

void Dialog::initDatabase() { //连接 sql server 数据库 conn = QSqlDatabase::addDatabase("QODBC"); conn.setDatabaseName(QString("...

2020-05-23 16:58:50 79 0

原创 十五、带复选框的ComboBox(自定义QComboBox)

一、效果图 二、代码实现 MenuItem.h #ifndef MENUITEM_H #define MENUITEM_H #include <QObject> class MenuItem { public: MenuItem(int menuId, const QSt...

2020-05-22 18:45:10 30 0

原创 五十八、Qt之权限管理,动态加载功能模块

一、需求 用户在登录以后,根据分配权限的不同,出现该权限所对应的的功能模块。 二、需求分析 主要就是设计用户权限系统:分配权限、管理权限、删除权限。这个一般是靠和数据库结合实现,由一个超级管理员管理所有的用户。 第一步:设计权限表:字段类似于 权限编号, 权限名, 可操作模块集合(PS:超级管...

2020-05-14 21:44:13 24 1

原创 五十七、Qt之QTreeWidget嵌套QTableWidget

一、效果 二、设计思路 主要是通过 QTreeWidget 嵌套另一个 QTreeWidget,另一个 QTreeWidget 在嵌套一个 QTableView。嵌套主要是通过 void QTreeWidget::setItemWidget(QTreeWidgetItem *item, int ...

2020-05-12 21:22:41 53 0

原创 五十六、QT之表格表头单元格合并,单元格内容只读和自定义样式
原力计划

一、效果 二、基本思想   由于无法直接操作表格的 header,所以只能采用一个 QTableWidget 和 QTableView 组合来实现一个表格, QTableWidget 用来实现表头,QTableView 用来加载数据。 (一)自定义TableView CustomTableVie...

2020-05-10 23:29:59 101 0

原创 五十五、使用 QSqlTableModel 限定只显示其中的几列,并限定显示顺序

查看 QSqlTableModel 源码发现,在 select() 方法中执行 sql 语句: bool QSqlTableModel::select() { Q_D(QSqlTableModel); const QString query = selectStatement();...

2020-05-08 21:09:13 89 0

原创 五十四、切割字符串(汉字+空格),获取字符串数组

//获取表头,QRegExp("\\s+"):正则表达式,表示所有文字;QString::SkipEmptyParts:忽略空格 QStringList headerList = header.split(QRegExp("\\s+"), QString::...

2020-05-07 20:15:56 53 0

原创 五十三、自定义实现QGraphicsItem

一、效果展示 二、代码实现 CustomGraphicsItem.h #ifndef UICANVASBASEITEM_H #define UICANVASBASEITEM_H #include <QObject> #include <QGraphicsPixmapItem&...

2020-04-22 19:35:30 92 0

原创 十四、QGraphicsView的paintEvent双缓存绘画(既自由绘画)

RectView.h #ifndef RECTVIEW_H #define RECTVIEW_H #include <QObject> #include <QGraphicsView> #include <QMouseEvent> #include <Q...

2020-04-19 19:13:52 74 0

原创 十三、使用resizeEvent(QResizeEvent *event)获取控件动态变化的宽高

//这里才是真正读取控件宽高的地方 void RectView::resizeEvent(QResizeEvent *event) { pix = QPixmap(width(), height()); pix.fill(Qt::white); qDebug() <&...

2020-04-19 18:58:14 127 0

原创 十二、QListWidget添加自定义Item

核心代码如下: //ListWidgetItemChat 即自定义Item void ChatDialog::addListWidgetItemChat(QListWidget *listWidget, QString username, QString ip) { ListWidgetI...

2020-04-14 19:44:57 94 0

原创 十一、图片扩展铺满QLabel

没设置之前: 加上如下代码: //设置图片铺满 QLabel QImage headPotrait; headPotrait.load(":/resources/images/touxiang01.jpg"); ui->labelFace->s...

2020-04-12 22:12:09 55 0

转载 一、windows 下OpenCV的安装部署详细教程

参见 windows 下OpenCV的安装部署详细教程 测试案例: #include <iostream> #include <opencv2/opencv.hpp> #include <opencv2/highgui/highgui.hpp> using n...

2020-04-10 20:54:48 183 0

转载 一、使用CMake将源码编译成QT MinGW编译器能使用的版本

参见Qt+OpenCV环境搭建文中编译 OpenCV 部分!

2020-04-10 18:27:51 44 0

原创 二十、程序在托盘中显示

QIcon icon = QIcon(":/kobe_1.jpg"); //png,ico,svg,bmp各种格式,尺寸无限制(推荐60x60),加载图标可以用相对、绝对、资源路径 QSystemTrayIcon trayIcon = new QSystemTrayIc...

2020-04-09 22:24:16 49 0

原创 十、设置 QListWidget 缩略图形式显示图片

void GasAlarm::initListWidget() { ui->listWidget->clear(); // 设置为图标显示模式 ui->listWidget->setViewMode(QListView::IconMode); // ...

2020-04-08 22:29:44 111 0

原创 十九、Qt之调用打印机打印表格

PrintAPI.h #ifndef PRINTAPI_H #define PRINTAPI_H #include <QObject> #include <QMutex> #include <QStringList> #include <QPrinter...

2020-03-22 21:06:00 352 2

原创 十八、QT之导出数据到EXCEL

ExcelAPI.h #ifndef EXCEL_H #define EXCEL_H #include <QObject> #include <QMutex> #include <QStringList> class ExcelAPI : public QO...

2020-03-22 21:00:55 118 0

原创 十七、打开电脑中的文件

QString file = QFileDialog::getSaveFileName(this, "保存文件", defaultName, "Pdf(*.pdf)"); QString url = QString("file:///%1&quo...

2020-03-22 20:51:54 35 0

原创 十六、Qt之保存成PDF(表格)

PdfAPI.h #ifndef PDFAPI_H #define PDFAPI_H #include <QObject> #include <QMutex> #include <QStringList> #include <QPrinter> ...

2020-03-22 20:50:51 230 0

转载 五十二、qt QString用法

参见 qt QString用法

2020-03-22 15:04:37 55 0

原创 五十一、Qt之通用数据库分页

DBAPI.h #ifndef DBAPI_H #define DBAPI_H #include <QObject> #include <QMutex> class QtSql; class QTableView; class QLabel; class QAbstra...

2020-03-22 11:07:20 81 0

原创 十五、QT之NTP校时

NTPAPI.h #ifndef NTPAPI_H #define NTPAPI_H #include <QObject> #include <QUdpSocket> #include <QDateTime> #include <QMutex> ...

2020-03-20 08:50:03 88 0

原创 五十、Qt之QListWidget实现缩略图

listWidget->setViewMode(QListView::IconMode); //设置为图标显示模式 listWidget->setResizeMode(QListView::Adjust); //设置为自适应 #ifdef __arm__ lis...

2020-03-19 22:34:39 58 0

原创 四十九、Qt之鼠标右键弹出菜单

一、首先得设置上下文菜单策略 this->setContextMenuPolicy(Qt::CustomContextMenu); 二、绑定右击信号、槽函数 我是直接在控件上右击,选择信号:customContextMenuRequested(const QPoint &pos) ...

2020-03-19 19:06:31 32 0

原创 十四、获取CPU、内存使用率

ShowCPUMemory.h #ifndef SHOWCPUMEMORY_H #define SHOWCPUMEMORY_H #include <QObject> class QLabel; class QTimer; class QProcess; class ShowCPU...

2020-03-18 22:44:53 88 0

原创 九、界面全屏

this->setGeometry(qApp->desktop()->availableGeometry());

2020-03-18 21:39:32 28 0

原创 四十八、修改pro文件,使项目编译文件夹更干净

#QT默认情况下把所有的编译中间文件都生成到debug和release文件夹里, #这样编译时生成的临时文件就按不同类型分类放到项目下的tmp文件夹中了 MOC_DIR = temp/moc RCC_DIR = temp/rcc UI_DIR ...

2020-03-18 19:28:11 50 0

原创 八、QWidget和QFrame区别

QWidget:就是一个容器 QFrame:也是一个容器,不过是一个有边框的容器 两者的主要区别就是容器有无边框,比如组合成下面组件时,最好使用QFrame:

2020-03-17 20:06:30 432 0

原创 十三、Qt之录GIF

一、图片转GIF工具类 gif.cpp // // gif.h // by Charlie Tangora // Public domain. // Email me : ctangora -at- gmail -dot- com // // This file offers a simple, ...

2020-03-17 19:40:34 59 0

原创 四十七、QT之UI初始化需要前面加载完毕之后再执行时的解决办法

当UI初始化时,若有部分代码需要前面执行完毕之后再执行,可以利用QTimer::singleShot(): QTimer::singleShot(0, this, SLOT(load()));

2020-03-16 22:10:31 91 0

原创 十二、Qt之串口开发

主要是借助第三方库 qextserialport 参见 关于QT串口通信的一点理解

2020-03-16 20:53:48 30 0

原创 十一、QT之截图并取出图中的颜色

一、截图 #if (QT_VERSION <= QT_VERSION_CHECK(5,0,0)) QPixmap pixmap = QPixmap::grabWindow(QApplication::desktop()->winId(), x, y, 2, 2); #else ...

2020-03-16 20:44:09 58 0

原创 四十六、QT应用开发之MVC架构(附案例)

一、基本思想   开发 Qt 应用程序的一个基本原则就是:UI界面和业务逻辑需要尽可能的分离。   判断一个结构的解耦程度,一个简单的办法是离开了UI界面,业务逻辑是否可以正常调用和运行,如果可以,说明这个架构是比较成功的。同时,对UI界面和业务逻辑功能的每个模块,是否能够被替换,而不影响整个项目...

2020-03-13 21:42:23 329 0

原创 四十五、QT 异常崩溃处理

  微软提供了 DbgHelp 错误调试技术。调用相关功能就可以保存程序崩溃时的信息,然后借助 WinDbg 软件就能分析出当时的执行状况。调用 DbgHelp 的MiniDumpWriteDump 函数保存以 .dmp 为后缀的 Dump 文件,该文件能被 WinDbg 读取并分析。   所以我...

2020-03-12 21:05:17 139 0

原创 十、Qt之调用 cmd 工具执行命令

//设置系统日期/时间 void AppUtils::setSystemDateTime(const QString &year, const QString &month, const QString &day, const QString &hour, cons...

2020-03-09 15:35:35 78 0

原创 九、Qt之读取 ini 文件

AppUtils.h #ifndef APPUTILS_H #define APPUTILS_H #include <QObject> class AppUtils : public QObject { Q_OBJECT public: static vo...

2020-03-09 09:50:17 31 0

原创 四十四、Qt之将带界面的程序封装成dll

1.修改配置文件 #TEMPLATE = app DEFINES += CUSTOMMESSAGEBOX_LIBRARY TEMPLATE = lib 2.在导出类的头文件上加如下代码 #if defined(CUSTOMMESSAGEBOX_LIBRARY) # define CUSTOM...

2020-03-08 15:45:50 229 0

提示
确定要删除当前文章?
取消 删除