- 博客(137)
- 资源 (25)
- 收藏
- 关注
原创 Qt笔记(七十五)之QLineEdit设置QIntValidator范围大小无效的问题
QLineEdit设置QIntValidator范围大小无效的问题
2022-10-24 10:39:45
4048
原创 Qt笔记(六十八)之获取内存信息
一.前言楼主最近在获取电脑设备的一些信息,今天获取了关于内存的信息,于是分享记录下二.获取过程1.使用系统APIGlobalMemoryStatusEx和结构体MEMORYSTATUSEX关于MEMORYSTATUSEX中各个变量的解释typedef struct _MEMORYSTATUSEX { DWORD dwLength; // 结构体的大小 DWORD dwMemoryLoad; // 表示内存使用率,是一个0-100的数字
2022-05-31 14:28:41
2769
原创 Qt笔记(六十七)之获取 计算CPU使用率
一.前言楼主最近在获取电脑设备的一些信息,今天想获取和计算cpu的使用率,于是分享记录下二.核心代码主要是利用了GetSystemTimes这个系统APIvoid getCpu(){ // FILETIME 是一个用两个32位字节表示时间值的结构体 // dwLowDateTime 低位32位时间值。 // dwHighDateTime 高位32位时间值 static FILETIME preidleTime; static FILETIME prekernelTime; stat
2022-05-31 11:11:28
3420
3
原创 Qt笔记(六十六)之Qt下载 配置QCustomplot
一.前言楼主最近发现Qt还有一个可用的第三方图标库,于是就想着下载配置来研究一下二.下载下载链接:官网下载链接然后选择合适的版本下载即可,楼主的Qt是5.9.0,所以选择了当前最新版本V2.1.0几个压缩包的区别QCustomPlot.tar.gz (3.8 MB, Full package contains source, documentation and examples)全压缩包,包括了源码,文档和例子QCustomPlot-sharedlib.tar.gz (2 kB, Cont
2022-05-27 10:43:39
493
原创 Qt笔记(六十五)之获取当前连接的WIFi名称
一.前言上一篇中Qt笔记(六十四)之Qt获取连接过的WiFi密码楼主介绍怎么怎么获取密码,但是要手动输入,于是新的需求就产生了,能不能不能获取当前的连接的WiFi的名称,然后再获取他的密码,这样的使用场景比较多二.实现过程1.基本思路:基于命令netsh wlan show interfaces去获取对应的配置文件数据,然后去解析命令执行结果,获取其中的名称,Qt方面主要是用QProcess2.核心代码 QString cmdStr = "netsh wlan show interfaces";
2022-05-26 11:24:59
1448
原创 Qt笔记(六十四)之Qt获取连接过的WiFi密码
一.前言楼主遇到一个这样的需求,想知道查询连接WiFi的密码,楼主一开始觉得很简单,直接电脑查看不就好了,但是对方说用户对象多数行政文员,并技术人,所以还是要搞个小工具给他们二.实现过程1.基本思路:基于命令netsh wlan去获取对应的WiF名称的的配置文件,然后去解析命令执行结果,获取其中的密码值,Qt方面主要是用QProcess2.核心代码 // 核心命令 QString cmdStr = QString("netsh wlan show profile name=%1 key=c
2022-05-25 14:13:54
812
原创 Qt笔记(六十三)之Qt实现窗口以及控件的全屏效果
一.前言面对大屏操作的时候,经常需要全屏效果查看,楼主也是遇到相关的需求,于是记录分享一下二.全屏实现1.顶级窗口的全屏与恢复,顶级窗口的全屏和回复都很简单,直接调用简单的接口即可void GraphicsViewDemo::on_pushButton_1_clicked(){ showFullScreen();}void GraphicsViewDemo::on_pushButton_2_clicked(){ showNormal();}2.非顶级窗口(子控件)的全
2022-05-24 15:38:33
4908
原创 小程序笔记(九)之console.timeEnd()
一.前言楼主最近在小程序中要测试网络请求的用时,一开始就想着自己写个函数在开始请求的时候获取时间戳,请求结束的时候再获取一次,计算差值就可以得到,然后面发现其实js就提供了这个函数接口,而且用起来很方面二.使用1.描述console.time() 是计时器的起始方法console.timeEnd() 是计时器的结束方法该方法执行后会将执行时长(以毫秒为单位)显示在控制台上两个方式都传入一个字段名,以此来区分多个计时器2.使用2.1单个计时器使用 console.time("循环50
2022-05-21 14:05:24
1615
原创 Qt笔记(六十二)之Qt下载 配置ffmpeg
一.下载ffmpeg官网进入之后,如下选择win下,点击Windows builds from gyan.dev点击左侧的release builds,注意这里是编译的文件可以根据需要下载ffmpeg版本,楼主这里选择的是ffmpeg-5.0.1-full_build-shared,然后等待下载完成即可解压之后内容如下二.配置1.将解压后文件夹中的lib和include拷贝到自己新建的工程目录下2.pro文件配置INCLUDEPATH += $$PWD/includeL
2022-05-20 14:19:36
764
原创 QML笔记(十)之QML获取当前时间戳
一.前言楼主在学习过程中,喜欢打印一些信息,然后都会记录打印的时间,一开始用QML,都不知道怎么获取当前的时间戳,于是记录分享一下二.获取方式1.QML方式 console.log(Qt.formatDateTime(new Date(),"yyyy-MM-dd HH:mm:ss.zzz"))2.js方式(QML调用) function getTime() { return new Date().toISOString(); }3.Qt获取(QML调用
2022-05-18 23:09:07
3216
原创 Qt笔记(六十一)之Qt属性系统Q_PROPERTY
一.前言楼主在学习QML调用C++的过程,接触到这个Q_PROPERTY这个,一开始没有太注意,但是QML要与C++交互,也要依赖Qt提供的属性系统,属性系统比较复杂。楼主只记录的所学习以及认识到的,不全面也不一定全对,于是就想记录分享一下二.Qt属性系统这是Qt 提供的属性系统;它基于元对象系统,通过信号和插槽提供对象间的通信;不依赖于编译器,可以在 Qt 支持的每个平台上使用任何标准 C++ 编译器三.属性例子3.1 Q_PROPERTY(bool enabled READ isEnab
2022-05-18 11:02:41
3202
原创 QML笔记(九)之QML调用C++(1)
一.前言楼主在学习QML过程中,发码QML是可以调用C++,但是形式好像是很多,楼主一开始也没有搞懂很多,先记录分享最简单的调用例子,后续再由浅入深二.调用过程1.新建c++类2.编写简单的,这样函数声明前要加Q_INVOKABLE ,或者声明为public slots,不然会无法调用#ifndef MYOBJECT_H#define MYOBJECT_H#include <QObject>class MyObject : public QObject{ Q_OB
2022-05-16 23:16:20
463
原创 Qt笔记(六十)之Qt实现无边框圆角窗口
一.前言设置无边框窗口之后,就会显示直角的风格,有用户反馈说,看着太锐了,让我给换成圆角,看着舒服一点,楼主一开始想用Qss实现,发现实在不行,后边想着,估计只能用绘图事件来操作了二.实现过程1.实现窗口无边框效果 setWindowFlag(Qt::FramelessWindowHint); setAttribute(Qt::WA_TranslucentBackground);2.重写paintEvent(方式1与方式2的效果是一样的)void ImageListWidget
2022-05-13 14:25:05
3502
5
原创 QML笔记(八)之.pragma library
一.前言楼主在学习QML调用js过程中,用Qt新建了一个js文件,在其中发现了头部.pragma library这个,一开始没在意这个,后续尝试注释了一下,发现了不一样效果,于是做个记录二.区别1.文字描述不加.pragma library:js文件可以直接访问qml中的控件id,从而对控件属性进行操作加.pragma library:js函数无法直接使用控件id,只能在qml调用函数的的时候将id作为参数传入,从而进行操作控件属性2.代码体现2.1不加.pragma library//.p
2022-05-13 09:56:32
834
原创 QML笔记(七)之QML调用js
一.前言在学习QML的过程中,楼主总感觉QML和JS更为洽和,有一种QML的壳,JS是内在的感觉,即是QML负责界面,js负责逻辑,于是就记录一下QML调用js的方式二.调用举例先构建一个测试界面,通过按钮来触发调用1.调用当前qml中的js函数1.1编写js函数2.调用逻辑 Button{ id:btn_1 text: "调用当前中的js函数" font.family: "微软雅黑"
2022-05-12 14:15:07
2321
原创 QML笔记(六)之QML自定义信号的创建与使用
一.前言信号槽是Qt的核心所在,不管是对于QtWidgets还是QML都是,连接自带的信号槽很容易就就比较容易,但有时候自带的信号槽不能满足我们的业务需要,于是就需要自定义信号,在需要的时候扔出,然后处理。自定义信号的使用场景一般都是组件和主页的通信,组件扔出信号,主页处理对应的业务逻辑,楼主该文章主要涉及自定义信号的使用,对于自定义组件不做陈述二.自定义信号的使用整体思路:创建信号->根据需要扔出信号->连接信号->绑定槽函数进行处理1.新建一个myText.qml,用sign
2022-05-11 16:31:53
4457
原创 QML笔记(五)之QML键盘事件
一.前言上篇文章了解了QML的鼠标事件的获取,这篇文章就记录一下获取QML的键盘事件二.键盘事件需要用一个Rectangle转起来,然后必须设施这两个属性 Keys.enabled: true // 不设置按键使能,获取不了按键事件 focus: true // 不设置焦点,获取不了键盘事件1.通用键盘事件Keys.onPressed,可以监测键盘上任意按键的按下,并获取对应的信息,注意event.text只能打印出数字和字母以及部分字符Keys
2022-05-10 17:53:48
3154
原创 QML笔记(四)之QML鼠标事件
一.前言QML的鼠标事件与QtWidgets有些许不同,楼主在学习过程中也感受到了,于是做个记录与分享二.事件分类1.怎么才能捕获鼠标事件呢。QtWidget中就是直接重写鼠标事件接口就可以了,在QML应该怎么去表示呢答曰:QML提供了MouseArea这个来捕获鼠标事件,注意,这个不能单独使用,需要用一个Rectangle装起来,这样就可以获取指定区域内的鼠标事件了Rectangle{ id:mouse_area_rect anchors.centerIn: pa
2022-05-09 17:43:43
3305
原创 QML笔记(三)之QML中的几种布局
一.前言先前了解了QML的添加控件与绑定信号槽,那么控件的摆放就是一个问题,虽然可以手动去设置控件的位置,但是有些时候还是需要自动对齐啥的,这时候就需要用到布局,该篇文章先简单了解QML提供的布局方式,后续再做深入研究二.QML布局方式1.行布局(Row)import QtQuick 2.0import QtQuick.Window 2.0import QtQuick.Controls 2.1Window{ visible: true width: 640 heigh
2022-05-07 17:42:55
2320
原创 Qt笔记(五十九)之Qt使用自定义字体
一.前言楼主在实际开发中,遇到有使用对界面字体要求的需求,有些客户希望用自己的字体,一开始,楼主还是有点懵,但是想到Qt一开始肯定是考虑到这个方式了,于是就去寻找,果然有!!二.设置字体1.使用内置字体,常规的设置方式 QApplication a(argc, argv); QFont font(QStringLiteral("微软雅黑"),13); a.setFont(font); 2.使用定义字体2.1将自定义字体放入资源文件中2.2设置代码
2022-05-07 11:50:26
2624
原创 小程序笔记(八)之wxss实现手机信号图标
一.前言楼主在实际开发过程中,遇到要显示设备信号强度的需求,本来想着用数字来表示,但是对于用户来说,图标相对数字更加直观,一开始打算用图片,做一个简单粗暴的替换,效果是实现了,但是不怎么合理,还是需要样式来实现合理点二.实现过程1.信号强度多数是4-5个垂直条来表示,这里面可以有认为4个view,每个view之间的间距为0,每个view宽度一致,高度递增,但是要怎么限制4个view之间的排列方式,可以在外边再套上一个view,设置他的显示方式为row2.具体代码<view class="si
2022-05-06 17:48:37
798
原创 QML笔记(二)之QML添加控件与绑定信号槽
一.前言虽然采用QML进行开发,但是依旧属于Qt的范围,控件的使用与对应的信号使用仍然是核心,毕竟Qt就是一个界面库,然后他的核心就是信号槽二.添加控件1.QML的控件添加都是以控件名称+属性的方式进行添加的,楼主认为有点像CSS,控件的位置可以利用属性x y进行设置2.举例import QtQuick 2.8import QtQuick.Window 2.2import QtQuick.Controls 2.1import QtQuick.Controls.Material 2.1Wi
2022-05-06 14:04:40
1142
原创 QML笔记(一)之初识QML
一.QMLQML是Qt推出的Qt Quick技术的一部分,是一种新增的简便易学的语言。QML是一种陈述性语言,用来描述一个程序的用户界面:无论是什么样子,以及它如何表现。在QML,一个用户界面被指定为具有属性的对象树。二.建立QML工程1.新建项目,选择Qt Quick Application,然后一直下一步就好了2.项目图3.运行图4.双击该文件,会出现设计器未完待续…...
2022-05-02 22:19:50
1080
原创 Qt笔记(五十八)之设置鼠标形状
一.前言楼主在应对最近的客户需求时候,发现了Qt可可以设置鼠标的形状,故此做个记录二.设置方式接口:setCursor文档解释:set the cursor shape for this window1.利用内置的枚举来设置光标形状,例子:// 箭头光标setCursor(Qt::ArrowCursor); 其他枚举值对应的光标形状2.自定义光标形状 QPixmap pixmap; // 光标图片 需要注意注意图片的大小 不然会比较难看 pixmap.load(":/Resou
2022-05-01 15:00:53
2586
原创 小程序笔记(七)之view实现自定义长按时间
一.前言楼主在开发小程序的过程中,遇到这样一个需求,要求长按view才开始某个操作,如果只是这样的需求简单,因为view就提供一个了长按的事件:bindlongpress但是这里的时间由显示,微信默认是350ms,可是客户要求是长按4s才执行先操作,这就有点麻烦了,无法用bindlongpress去实现。二.解决方式1.长按操作,即是从按下到离开,会有一个时间间间隔,只要捕获这两者的时间,然后再计算两者之间的时间差即可自由实现长按多少秒再执行业务操作。以上是解决的思路方向,现在需要捕获两个动作,
2022-04-30 16:21:26
1557
原创 Qt笔记(五十七)之显示图片缩略图
一.前言楼主在实际开发中,遇到这样一个需求,需要加载指定目录下所有图片,并显示其缩略图,一开始以为需要用QLabel去做,自己手动设置大小,没想到可以QListWIdget提供了IconMode这个显示模式,可以轻松做到二.核心代码#include "ImageListWidget.h"#include "ui_ImageListWidget.h"ImageListWidget::ImageListWidget(QWidget *parent) : QWidget(parent),
2022-04-27 17:34:45
2977
1
原创 Qwt笔记(十一)之设置QwtPlot起始刻度重合参考方式
一.遇到的情况有这样的一个情况,QwtPlot左x轴和底y轴的起始刻度数值是不会重合的,如果起始数值不一样,不重合自然是没有问题的,但是我们一般设置其实数值为0,这个时候我们是希望重合的,因为看起来合理点,楼主研究了下,目前找到一个勉强可行的方式二.方法设置坐标轴之间的间距 for (int axis = 0; axis < QwtPlot::axisCnt; axis++) { ui->qwtPlot_1->plotLayout()->setAli
2022-04-26 09:25:11
1041
2
QCustomPlot.tar_v2.1.0.zip
2022-05-27
QML笔记(六)之QML自定义信号的创建与使用-源文件.zip
2022-05-11
Qt自定义标题栏源码V1.0
2022-04-08
QZxing动态库集合 包含mingw32 msvc2015_32 msvc2015_64编译的动态库
2022-03-30
Qt笔记(二十四)之系统托盘QSystemTrayIcon 例子源码
2022-01-17
Qt笔记(二十)之实现窗口定时关闭 源码
2022-01-12
小程序笔记(一)之view多次点击只取最后一次 源码
2022-01-08
Qt之线程的使用(继承QThread重写run函数) 源码
2021-12-21
CreateAccess.rar
2020-06-21
QTextEdit只接受数字输入工程完整源码
2020-06-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人