- 博客(1038)
- 资源 (17)
- 收藏
- 关注
原创 chrono时间和日期库学习
此头文件是日期和时间库的一部分。类模板 std::chrono::duration 表示时间间隔。它由 Rep 类型的计次数和计次周期组成,其中计次周期是一个编译期有理f,表示从一个计次到下一个的秒数。在 duration 存储的数据只有 Rep 类型的计次数。若 Rep 是浮点类型,则 duration 能表示小数的计次数。Period 被包含为时长类型的一部分,且只在不同时长间转换时使用。
2024-07-06 15:21:40
946
原创 codecvt本地化库学习
此标头是本地化库的一部分。该头文件包括3个类,codecvt_utf8,codecvt_utf16, codecvt_utf8_utf16三个类,本篇介绍这三个类的一些用法。
2024-06-30 16:12:06
350
原创 memory动态内存管理学习之weak_ptr
此头文件是动态内存管理库的一部分。std::weak_ptr 是一种智能指针,它持有对被 std::shared_ptr 管理的对象的非拥有性(“弱”)引用。在访问所引用的对象前必须先转换为 std::shared_ptr。std::weak_ptr 用来表达临时所有权的概念:当某个对象只有存在时才需要被访问,而且随时可能被他人删除时,可以使用 std::weak_ptr 来跟踪该对象。
2024-06-29 21:38:21
368
原创 memory动态内存管理学习之shared_ptr
此头文件是动态内存管理库的一部分。std::shared_ptr 是一种通过指针保持对象共享所有权的智能指针。多个 shared_ptr 对象可持有同一对象。下列情况之一出现时销毁对象并解分配其内存: 最后剩下的持有对象的 shared_ptr 被销毁; 最后剩下的持有对象的 shared_ptr 被通过 operator= 或 reset() 赋值为另一指针。
2024-06-16 17:24:37
311
原创 memory动态内存管理学习之unique_ptr
此头文件是动态内存管理库的一部分。std::unique_ptr 是一种智能指针,它通过指针持有并管理另一对象,并在 unique_ptr 离开作用域时释放该对象。在发生下列两者之一时,用关联的删除器释放对象: 管理它的 unique_ptr 对象被销毁。 通过 operator= 或 reset() 赋值另一指针给管理它的 unique_ptr 对象。
2024-06-09 21:45:27
474
原创 locale本地化库学习
std::locale 类型的对象(本地环境对象)是不可变刻面的一个不可变索引集。C++ 输入/输出库的每个流对象都与一个 std::locale 对象关联,并用它的各刻面来分析及格式化所有数据。另外,每个 std::basic_regex 对象也都与一个本地环境对象关联。 (C++11 起)本地环境对象也可以在标准容器和算法中用作进行字符串校排的谓词,而且也可以直接访问,以获得或修改它所保有的平面。
2024-06-08 23:42:06
563
原创 functional函数对象库学习
类模板 std::function 是一种通用多态函数包装器。std::function 的实例能存储、复制及调用任何可复制构造 (CopyConstructible) 的可调用 (Callable) 目标——函数(通过其指针)、lambda 表达式、bind 表达式或其他函数对象,以及成员函数指针和数据成员指针。存储的可调用对象被称为 std::function 的目标。若 std::function 不含目标,则称它为空。调用空 std::function 的目标导致抛出 std::bad_func
2024-06-02 07:45:56
452
原创 stack学习
std::stack 类是一种容器适配器,它给予程序员栈的功能——特别是 FILO(先进后出)数据结构。该类模板用处为底层容器的包装器——只提供特定函数集合。栈从被称作栈顶的容器尾部推弹元素。
2024-06-01 21:41:27
486
原创 queue学习
std::queue 类是一种容器适配器,它提供队列的功能——尤其是 FIFO(先进先出)数据结构。此类模板用处为底层容器的包装器——只提供特定的函数集合。queue 在底层容器尾端推入元素,从首端弹出元素。
2024-05-26 15:12:51
308
原创 Qt绘制边框有阴影兼容性问题
在Qt开发过程中,有时候我们要显示一个有阴影的对话框,这时一般采用自定义实现,然而最近在开发时软件时,Win11上显示正常,Win10或其他Win11电脑显示不正常,存在兼容性问题吗?
2024-04-22 23:49:01
551
原创 QT添加软件启动页
QT开发的软件有时在软件起动的过程中要获取一些资源等,这个时候界面可能要等待一些时间,这种等待用户可能会误以为点击没有反应,那么有没有一种方式优化这个体验呢。答案就是接下来要说的给程序添加启动动画,程序加载完成后显示主界面关闭启动页。
2024-03-24 22:10:31
305
原创 Qt for Mac阻止MacOS系统休眠
Qt开发的应用程序如果电脑休眠了会影响软件的使用,因此在软件的使用过程中需要防止电脑休眠,在Win上有专门的API进行处理,在Mac上也必需使用Mac平台自身的API,本篇介绍在Mac平台下使用Qt阻止Mac系统休眠。
2024-03-17 20:33:54
394
原创 QSlider使用笔记
最近做项目使用到QSlider滑动条控件,在使用过的过程中,发现一个问题就是点滑动条上的一个位置,滑块并没有移动到鼠标点击的位置,体验感很差,本篇介绍两种方法实现鼠标点击滑动块移到相关的位置。
2024-02-03 17:33:11
382
原创 Qt线程高级应用
一般我们在用Qt开发时,把耗时操作放在线程中执行,避免卡界面,Qt的线程使用有多种方式,一种是继承QThread,一种是moveToThread的方式,还有QtConcurrent方式
2024-01-28 22:57:18
935
原创 QMenu风格设计qss+阴影
Qt的菜单经常在软件开发中用到,默认的菜单效果都不符合设计师的要求,本篇介绍QMenu菜单的风格设计,包括样式表和阴影。
2023-12-08 20:48:15
1077
原创 QDoubleSpinBox的使用示例
QDoubleSpinBox即可以做为数值型输入框使用,也可以使用只读型数据显示框,在作为输入框使用时比QLineEdit有以下几个方面的优势1.可以设置范围,并且范围精确,2.输入数据精确,自动屏幕非数值以外的字符。3.设置步长后可以通过上下键自动增减值。本篇记录QDoubleSpinBox的基本使用。
2023-11-29 21:06:11
1441
原创 QSS之QComboBox(文字居中)
QComboBox在Qt开发过程中经常使用,默认的下载列表风格达不到设计师的要求,本篇介绍基本的QComboBox的qss设置。
2023-10-03 11:41:45
3317
原创 Qt自定义菜单
Qt开发过程中,弹出菜单时我们一般使用QMenu,但是QMenu都是一条项固定的格式,如查想要自己的设计界面就没法使用默认的Action项了,因此我们得用自定义的QMenu。
2023-10-02 16:49:19
1928
原创 QSS之QLineEdit
QLineEdit我们在开发过程中是经常使用的,一般情况下默认的风格是不适合设计师的要求,本篇介绍QLineEdit的基本qss风格:
2023-10-01 11:23:41
942
原创 QSS之QScrollArea
QScrollArea在实际的开发过程中经常使用,主要是有些界面一屏显示不下,所以得用QScorllArea带滚动条拖动显示剩余的界面。默认的QScrollArea滚动条不满设计的风格,因此我们必须设置自已的滚动条风格,QScrollBar分为水平horizontal和垂直vertical,在设置的过程中常见的属性如下:
2023-09-30 17:58:35
1371
原创 QLineEdit设置数据的输入范围QIntValidator和QDoubleValidator
在日常开发过程中QLineEdit作为输入框,有时要限制输入的内容,比哪,考试分数为0-100,这个时候就使用QIntValidator作为限制范围,而如何输入的是带小数的呢,那么使用QDoubleValidator可以吗,下面请看具体的示例。但是仔细一想是Qt的Bug吗,网上查了下也有人遇到说是一个Bug,后来查看帮助说明。一个是标准计数法,一个是科学计数法,默认是科学计数法,所以可以输入任何内容,当然也可以用正则表达式来实现。如果换成科学计数法呢。
2023-09-24 23:41:34
5694
4
原创 QSlider风格设置
QT的滑动条在开发的过程中经常使用,默认的QSlider风格比较简陋,一般达不到UI设计的效果,本篇记录一个QSlider使用过程中风格的设置。4.内边距属性padding。3.外边距属性margin。1.qss常用的字段属性。2.边框属性boder。
2023-09-18 20:05:10
630
原创 Qt添加第三方字体
最近开发项时,据说不能用系统自带的微软雅黑字体,于是找一个开源的字体,思源黑体,这个是google和Adobe公司合力开发的可以免费使用。本篇记录一下Qt使用第三方字体的方式。字体从下载之家下载http://www.downza.cn/soft/266042.html。下载解压后有8种字体。
2023-07-16 18:19:39
2846
原创 QT调用glog日志流程
glog日志库是Google开源的轻量级的日志库,平时在开发过程中经常要使用到日志,本篇记录Qt项目使用glog日志库的记录。提示没有platform.h头文件,从glog目录里取的文件有5个,确实没有platform.h头文件。默认安装在C:\Program Files\glog目录下,而且有权限的问题,边把把VS用管理员权限打开,这里要要右击INSTALL项目,安装,会把头文件和动态库输出到安装目录。切换到glog源码目录,创建build目录,切换到build目录。安装设置环境变量,检查安装情况。
2023-07-03 19:09:10
939
原创 new动态内库管理库学习
new文件是动态内存管理库的一部分,特别提供低层内存管理特性。 它包括bad_alloc,bad_array_new_length,nothrow_t,align_val_t类nothrow常量,以及函数 operator newoperator new[], operator deleteoperator delete[], get_new_handler,set_new_handle等,下面介绍它们的基本使用。
2023-03-24 19:58:28
440
原创 QWidget设置背景图及圆角
在Qt开发过程中,QWidget是经常作为主窗体的父窗口,有时我们需要对主窗口设置背景,设置圆角以达到美观的效果,通常的有以下三种方法:qss,QPalette设置以及paintEvent绘制。下面介绍这三种方法。
2023-03-20 19:49:03
4340
1
原创 Qt实现Toast效果
使用Qt开发桌面软件的过程中,有时需要用到提示语,过几秒后自动消失,这种Toast的样式,比如“网络断开连接”,“已超时”,“对方拒绝”等等,而且可能多次出现。那么用Qt怎么来实现呢,一般可能想到的是用QTimer定时器处理,但这种要写信号槽,本篇介绍用timerEvent定时器事件处理。
2023-02-27 19:52:08
1398
原创 Qt检测电脑是否装有摄像头和麦克风接口
最近在弄音视频相关的项目,其中有一个需求是要检查该电脑是否有摄像头和麦克风,没有要给出提示框,那么Qt有没有这个功能呢,网上查了下说用微软的directshow的可以用,但是这东西只能在Win上用,如果是Mac上则用不了,后来想了下,Qt有个QSysInfo类获取系统信息,那么有没有可以获取摄像头和麦克风相关的类了呢,于是查帮助文档,还真找到了QCamera和QCameraInfo,麦克风相关的类QAudio和QAudioDeviceInfo
2023-02-21 19:53:01
345
原创 tuple通用工具库学习
tuple直译为元组,他是固定大小的异类值的汇集,通常如果我们要传的参数或函数返回值都是单类型的,如果实在要返回多类型的就会把它封装成类或结构点,比如坐标Point(x,y),而如果不用这种方式那么tuple就可以做到返回多个值的方式,下面介绍tuple的一些基本使用。
2023-02-06 20:00:56
192
原创 QSplitter学习笔记
QSplitter是分割窗口控件,并且可以拖动窗口来改变窗口的大小,是主界面显示时经常用到,本篇介绍它的交互操作。QSplitter可以容纳多个Widget,具有布局的特点,并且可以动态调整各个Widget的大小。QSplitter布局有两种方式:垂直和水平Qt::Orientation::Vertical Qt::Orientation::Horizontal
2023-01-31 20:09:48
698
1
原创 《汇编语言》第10章——实验10 编写子程序
在这次实验中,我们将要编写3个子程序,通过它们来认识几个常见的问题和掌握解 决这些问题的方法。同前面的所有实验一样,这个实验是必须独立完成的,在后面的课程 中,将要用到这个实验中编写的3个子程序。
2023-01-15 15:30:00
454
原创 第1章 Rust安装
Rust是一门安全的语言,最近也加入到Linux内核中,因此后续这门语言会越来越流行,所以准备学习下,本篇介绍Rust在Window平台上的安装过程。
2022-12-12 00:05:30
5688
原创 QQuickImageProvider的简单使用(图片提供者)
我们都知道qml中用Image来显示图片,直接给Image的source赋路径自动加载,非常方便,但如果是大图片占用的内存就很高,如果有很多大图片就会占用非常多的内存而引起程序崩溃。那么有没有一种方式来加载缩略图而减小内存呢,答案是有的,Qt提供一个QQuickImageProvider类用来压缩图片,这样内存就会占用很小,下面是具体的示例:
2022-10-12 19:26:23
1027
原创 macos编译openssl
openssl是加解密经常用到的的一个开源库,很多项目中有用到,比如账号登录,数据库加密,libcurl访问https等,一般我们用到的是在window平台,而且很多都可以在网上找到现成的库,在macos系统用到的比较少,可能是开发少的原因。本篇介绍在macos中编译openssl.
2022-09-12 09:31:29
2047
原创 exception错误处理库学习
exception是c++标准库组件抛出的各种异常的基类,在c++开发的过程中我们经常会遇到各种各样的异常比如,打开文件失败,数组越界,等等,如果不想让程序崩溃,那么就需要使用一个异常类来处理这些异常错误,使得程序继续运行。下面我们来学习exception的基本使用。
2022-09-04 11:28:12
1342
1
原创 bitset位集学习
类模板bitset表示一个N位的固定大小的二进制位序列。可以用标准逻辑运算符操作bitset,并将它与字符串和整数相互转换。本篇介绍bitset的一些基本使用方法。
2022-09-03 21:40:02
464
computer-vision计算机视图算法opencv相关
2024-03-03
QTreeView+自定义Model实现示例
2022-07-01
C++ Qt设计模式第2版(中英文版)+源码
2015-09-02
VC++ 6.0数据库系统开发实例导航源码
2011-10-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人