自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

C++ Qt 开发藏经阁

寒江孤影,江湖故人,相逢何必曾相识

原创 QML控件Label、TextField用法介绍

Label用法代码 import QtQuick 2.12 import QtQuick.Window 2.12 import QtQuick.Controls 2.5 Window { visible: true width: 640 height: 480 ...

2020-04-29 20:04:30 346 0

原创 QML矩形框控件Rectangle用法

QML提供了矩形控件 代码如下: import QtQuick 2.12 import QtQuick.Window 2.12 Window { visible: true width: 640 height: 480 title: qsTr("...

2020-04-29 19:54:18 385 0

原创 QML程序布局anchors:锚的用法

QML的布局方法是anchors,锚。 例如界面上四个按钮,可以用绝对坐标 (x, y) 设置他们的位置, 代码如下: import QtQuick 2.12 import QtQuick.Window 2.12 import QtQuick.Controls 2.5 Window...

2020-04-27 21:37:06 1106 1

原创 QML控件Button用法介绍

Button是很常见的控件,Qt助手的说明如下: Button QML Type Push-button that can be clicked to perform a command or answer a question. More... Import Statement: imp...

2020-04-27 21:33:36 967 0

原创 QML基础之窗体构建与代码介绍

1 什么是Qt Qucik? Qt Quick是QtSDK4.7中引入的一种新的界面开发框架,使用QtQuick,你可以快速、 轻松地创建供移动和嵌入式设备使用的动态触摸式界面和轻最级应用程序,这也是它被命名 为Quick的原因. Qt Quick包括描述性语言QML、语言...

2020-04-27 21:32:48 188 0

原创 Qt实现程序二次开发

某些大型系统,在给客户用的时候,可以适当的开发部分API, 让客户自己开发,这种可以称之为二次开发,C++的做法有很多,windows可以用dll, com组件等技术,Qt当然也有自己的实现方式。 例如下面一个简单的软件界面 如果是实际开发时,可以把一些功能封装成dll, 把做...

2020-04-27 21:30:49 549 0

原创 C++ MySQL8.0连接与数据查询

安装好MySQL8版本后,在安装目录会有mysql C++连接的头文件,静态库和动态库。如下图: 用VS2017新建C++控制台程序,根据安装的mysql是x86还是x64, 在项目属性中配置 包含mysql头文件目录:C:\Program Files\MySQL\MySQL Ser...

2020-04-25 21:03:23 674 0

原创 Qt显示gif动态图

很多软件的登录窗口会有动态图,Qt提供了动态图的显示方法,效果如下: 上图用QLabel可以显示gif,这里主要用到了QMovie类的一些方法,实现起来也很简单, 在头文件声明QMovie对象,注意要包含头文件 #include <QMovie>,代码如下: #ifnd...

2020-04-24 21:04:12 290 0

原创 Qt窗体工具栏事件响应与自定义

某些时候,工具栏可以提高软件的使用效率,比如VS的调试,查找,上一步,下一步等,在开发时经常用到。本篇博客介绍如何在Qt窗体上添加工具栏。 用QtCreator新建一个GUI项目,继承于QMainWindow, 只有QMainWindow有工具栏。例如我实现的效果如下: 工具栏...

2020-04-24 17:32:19 372 0

原创 Qt视频显示类QVideoWidget的使用说明与代码演示
原力计划

先简要说明下视频显示,视频文件想在电脑屏幕上显示,需要承载在UI控件上,例如MFC,可以用Picture控件,C#可以用PictureBox, Qt可以用QOpenGLWidget等,不同的UI库,实现方法不同。当然这只是像素的展示,还涉及到音视频编解码,同步等。这些,UI库可能就做不到了,需要借...

2020-04-21 20:19:10 1589 0

原创 VS右侧滚动条样式设置

右键滚动条可以设置成缩略图模式和条状模式。如下图: 比如缩略图模式

2020-04-19 22:27:21 299 0

原创 Qt显示OpenCV图片

用QLabel可以显示OpenCV的Mat图片,本demo用的是OpenCV4, Qt界面如下: 点击按钮加载图片并显示,代码如下: void OpenCVTest::on_btnLoadimg_clicked() { QString filename = QFileDialog::...

2020-04-19 15:49:42 273 0

原创 Qt FTP上传下载【完整的代码示例】

在项目开发中有时会涉及到文件上传,存储,本篇介绍如何用Qt实现ftp协议进行文件上传于下载。 一 FTP协议简介 FTP(File Transfer Protocol)是应用层的一个文件传输协议。其主要作用是在服务器和客户端之间实现文件的传输和共享。FTP协议运行在TCP连接上,保证了文件传...

2020-04-15 20:36:24 563 0

原创 win10搭建FTP服务器

本篇博客记录在win10上搭建ftp服务器,利用FileZilla可以搭建FTP服务器与客户端。FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能。可控性、有条理的界面和管理多站点的简化方式使得Filezilla客户端版成为一个方便高效的FTP客户端...

2020-04-15 15:58:27 163 0

原创 设计模式C++实现:观察者模式

观察者模式又被称为发布订阅模式。它定义了对象之间一对多的依赖,当一个对象状态发生改变时,它的所有依赖者都会收到通知并自动更新相关内容。即建立一个(Subject类)对多(Observer类)的关系,能够使得当Subject的对象变化的时候,依赖这个的多个Observe的对象实例也能够同步进行相应的...

2020-04-12 17:08:44 129 0

原创 设计模式C++实现:单例模式

一 、单例模式 单例可能是最常用的简单的一种设计模式,实现方法多样,根据不同的需求有不同的写法; 同时单例也有其局限性,因此有很多人是反对使用单例的。本文对C++ 单例的常见写法进行了一个总结, 包括懒汉式、线程安全、单例模板等; 按照从简单到复杂,最终回归简单的的方式循序渐进地介绍,并且对各种...

2020-04-12 14:38:18 128 0

原创 Qt高仿电脑管家界面(二):点击按钮弹出菜单

电脑管家的 Qt原有的菜单功能,无法直接实现,还有电脑管家的菜单位置刚好在按钮的中心位置,其实这个用Qt也可以实现,获取窗口坐标,根据按钮的位置弹出菜单。 下面给出在点击按钮时弹出菜单的代码: void Widget::on_btnSet_clicked() { QList...

2020-04-10 21:31:49 428 0

原创 Qt高仿电脑管家界面(一):项目开发介绍

最近用Qt模拟实现了电脑管家界面,只有简单的界面跳转操作,没有具体功能。 界面如下: 这个做起来也不难,就是界面跳转,用Qt做的话几个控件就可以搞定。主要是那些文件安全监测功能不好做。2010左右发生了3Q大战,那时QQ差点就消失了,但也促使腾讯研发了自家的安全软件。 Qt设计器中...

2020-04-10 21:19:24 592 0

原创 C++ lambda表达式用法说明

C++ lambda表达式的本质就是重载了 operator(),lambda是一个类,在调用时会进行编译展开。因此lambda表达式对象其实就是一个匿名的functor,所以 lambda 表达式 也叫匿名函数对象。 C++中lambda表达式的构成 一个标准的lambda表达式包括:...

2020-04-09 21:26:48 295 0

原创 ffmpeg本地文件udp推流命令

mp4推udp ffmpeg -re -i 1.mp4 -vcodec h264 -acodec aac -pkt_size 1316 -f mpegts udp://127.0.0.1:1234 用vlc可以播放 udp://@:1234

2020-04-08 18:32:00 310 1

原创 vs2017编译libcurl源码

libcurl简介 当客户端项目设计到web开发时,需要使用到相关通信框架,libcurl是很好的选择,使用libcurl和服务端通信,获取相关数据,在客户端再做相关逻辑处理。 libcurl是一个跨平台的网络协议库,支持http, https, ftp, gopher, telnet, ...

2020-04-07 12:00:46 242 0

原创 Qt C++ libcurl调用http接口获取数据

本篇介绍用libcurl获取http数据,例如,我做了一个万年历,输入日期就可以得到当天的信息,界面如下: 界面用Qt做的,用qss做了渲染,日期信息调用的http接口,获取返回的json数据,再解析json数据,即可得到想要的信息。在一些前后端开发时,libcurl还是可以用用的。 ...

2020-04-07 11:52:45 485 0

原创 qss代码大全,你想要的都有

我个人常用的qss代码,如下: QWidget { background-color:rgb(54,54,54); } QLabel,QGroupBox { color:white; font:12px; } QLineEdit,QPlainTextEdit { color:...

2020-04-07 11:32:39 232 0

原创 vs2017编译使用jsoncpp

C++ 解析json的方式有很多,libjson, jsoncpp, boost等,我的另一篇博客有boost解析json的用法,有兴趣的可以看看,本篇介绍jsoncpp的使用。 一 、cmkae vs2017编译jsoncpp 下载jsoncpp源码:https://github.com/...

2020-04-06 23:23:57 877 3

原创 pyqt表格中添加控件

Qt的表格可以像excel一样,添加一些操作,例如下拉选择,添加按钮等,例如下面的例子 QTableWidget类有setCellWidget方法,可以在表格中设置控件 def setCellWidget(self, p_int, p_int_1, QWidget): # re...

2020-04-06 11:01:27 287 0

原创 pyqt QTableWidget详细用法

QTableWidget继承自QTableView, 比QTableView增加了一些方法,使用更方便,主要有如下API: setRowCount: 设置行数 setColumnCount:设置列数 setHorizontalHeaderLabels:设置表头 setEditTriggers:...

2020-04-06 10:14:07 200 0

原创 pyqt QListView详细用法

像歌曲列表,文件列表,这种可以用QListView实现,例如,下面的结果: 代码如下: from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QListView, QMessageBox from PyQt5.Q...

2020-04-05 20:57:09 935 0

原创 pyqt QTableView详细用法

QTableView是表格视图,可以像excel一样的显示数据,如下图: 详细代码: from PyQt5.QtWidgets import * from PyQt5.QtGui import * import sys class TableView(QWidget): def ...

2020-04-05 18:19:52 1578 0

原创 pyqt QSpinBox详细用法

QSpinBox可以上下调整值,代码如下: import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class QSpinBoxDemo(QWidget): ...

2020-04-05 17:51:29 164 0

原创 pyqt QTextEdit 详细用法

Qt显示文本的控件很多,QLabel, QLineEdit, QPlainText等,本篇介绍QTexEdit的用法,主要API如下: setPlainText:显示文本 toPlainText:获取文本 setHtml:设置html文本 toHtml:获取html代码 示例代...

2020-04-05 15:49:40 555 0

原创 pyqt QLineEdit 详细用法

一 QLineEdit回显格式 QLineEdit的文本有四种显示方式: (1)正常显示, (2)输入但不显示文本, (3)密码格式显示, (4)类似于在linux下输入密码也不显示。 Qt代码中有声明: NoEcho = 1 Normal = 0 ...

2020-04-05 15:32:54 309 0

原创 pyqt QLabel详细用法

QLabel控件类的主要API如下: setAlignment():设置文本的对齐方式 setIndent():设置文本缩进 text():获取文本内容 setText():设置文本内容 selectedText():返回所选择的字符 setBuddy():设置伙伴关系 setWo...

2020-04-05 13:42:58 530 0

原创 C++友元函数与友元类

一 友元函数的定义与调用 C++类除了成员函数,静态成员函数,还有一种函数:友元函数。 友元函数和类一种朋友关系,它不属于类,但可以访问类的私有成员,它和类是一种朋友关系,也不需要用类的对象去驱动,例如下面的代码: #include <iostream> using...

2020-04-01 12:50:27 123 0

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