- 博客(51)
- 资源 (11)
- 收藏
- 关注
原创 CMake轻松实现把编译生成文件分类输出到指定路径,同时又拷贝一份到别的指定路径(Window/Linux通用)
文本讲述CMake如何管理C++项目编译时生成文件分类输出到指定路径,以及如何设置各种编译生成文件、依赖文件、配置文件、头文件等的拷贝到指定路径的方法。使用CMake管理的工程你是否有以下需求:1.项目编译时将生成的文件分类自动输出到指定位置;2.除了上面输出到指定位置以外,还要拷贝一份到指定位置(包含头文件,配置文件,第三方依赖库文件等);
2025-02-06 18:07:30
588
原创 QCheckBox样式表qss实现状态切换显示不同图标(含第三状态:半选状态)
QCheckBox实际上支持三种状态:选中、未选中、半选本文介绍如何使用qss实现这三种状态的样式,网上百度很容易找到选中和未选中的qss样式,却很难找到半选的qss怎么写。
2024-05-15 15:30:52
2374
1
原创 Qt实现水平方向(横向)流式布局FlowLayout简单又实用!提供2种最有用的方法!
如果没有搜索过滤,实时排序等高能要求,相对固定的顺序,直接使用轻巧的FlowLayout;如果需要支持实时的搜索、过滤、指定插入、实时排序、选中、拖拽交互两个项位置、数据量大且要索引访问等高级功能,建议使用QListView或者QListWidget;
2024-05-14 12:04:56
2217
原创 OpenSSL实现AES的ECB和CBC加解密,可一次性加解密任意长度的明文字符串或字节流(QT C++环境)
OpenSSL实现AES的ECB和CBC加解密,可一次性加解密任意长度的明文字符串或字节流(QT C++环境)
2024-05-06 17:48:43
1560
原创 Qt使用QWidget重绘实现圆环形渐变色进度条(支持不确定进度模式)
QT中使用QWidget重绘实现圆环形渐变色进度条,支持不确定进度模式,支持设置背景图片,灵活度很高。
2024-04-08 17:04:35
1166
原创 Qt实现QDebug重定向输出到日志文件(支持多线程安全)
在Qt中,qDebug(),qInfo(),qWarning(),qCritical(),qFatal()常用于打印信息到终端控制台,我们可以将其重定向输出到文件中。方法如下:
2024-04-02 10:14:40
2514
1
原创 Qt加载.css/.qss文件设置控件的QSS样式(支持程序运行时修改且立即生效类似换肤效果)
Qt实现加载.css/.qss文件设置控件的QSS样式(支持程序运行时修改且立即生效类似换肤效果)
2024-04-01 16:19:30
3176
3
原创 在Chrome浏览器中简单完美安装Axure-Chrome-Extension插件,不用再看别的安装教程了(含插件下载地址)。
Axure生成的HTML静态网页文件在浏览器中打开异常?Chrome浏览器打开Axure生成的HTML静态网页文件时,会出现下图所示的“AXURE RP EXTENSION FOR CHROME”页面,这是因为你的Chrome浏览器中还没有安装Axure的插件“Axure-Chrome-Extension”才导致的。
2024-02-18 16:23:43
10784
转载 Qt中作为独立窗口顶层的QWidget及其子类设置圆角以及阴影
对于一个窗口来说,无论它看起来是什么样子的,它其实都是一个矩形,只不过有些地方看不到而已。对于子部件来说,它有父窗口给它托着,它看起来是不规则的(比如圆角)。但对于顶层窗口来说,它并没有父窗口给它托着,它自身有一层不透明的背景,所以就算实现圆角,它的背景还是一个矩形,会有很难看的底色。就算你给它设定为透明的,那么它也不能用QSS直接进行装饰,因为透明窗口只能用 painter 自己绘制。所以这就给了我们一个实现顶层窗口特效的思路,那就是用一个透明的父窗口将它托住,这样就能像其它子部件一样想干嘛就干嘛。
2023-12-08 17:35:58
1498
原创 Qt中继承QWidget之后,QSS样式表不起作用解决办法
方法一:设置属性 this->setAttribute(Qt::WA_StyledBackground, true);方法二:改成继承QFrame,因为QFrame自带paintEvent函数已做了实现,在使用样式表时会进行解析和绘制。方法三:重新实现QWidget的paintEvent函数时,使用QStylePainter绘制。Qt中继承QWidget之后,样式表不起作用,解决办法有三个。
2023-10-08 10:20:05
1461
原创 Linux 查看/关闭/禁止开机启动防火墙命令
firewall-cmd --state 或。禁止firewall开机启动。停止firewall。
2023-06-01 12:01:33
1627
原创 linux下编译遇到/usr/bin/ld: cannot find -luuid
1、linux 下安装UUID库。解决方法:安装UUID库。2、获取系统的uuid。原因:缺少uuid库。
2023-05-25 08:41:28
1387
原创 fatal error: zlib.h: No such file or directory #include <zlib.h>
root用户下安装zlib和zlib-devel。
2023-05-24 14:36:20
1577
原创 CMake中find_package()查找指定版本的库,以Qt库多版本共存为例
CMake中find_package()查找指定版本的库,以Qt库多版本共存为例
2023-04-03 11:22:40
4898
原创 CMake设置Visual Studio工程的调试环境变量和工作目录cwd的方法
CMake设置Visual Studio工程的调试环境变量和工作目录cwd的方法
2023-04-03 10:55:28
4550
2
原创 QML使用Layout布局时出现大量<Unknown File>: QML QQuickLayoutAttached: Binding loop detected for property循环绑定警告
QML编程使用RowLayout、ColumnLayout、GridLayout布局时出现大量循环绑定的警告,例如:: QML QQuickLayoutAttached: Binding loop detected for property "minimumWidth"
2022-07-26 18:54:42
2346
原创 Linux Ubuntu 20.04LTS编译安装C++ boost库
我以编译安装 boost_1_73_0 版本为例:首先确定你的Linux已经安装了gcc和g++编译器,如果没有就使用apt工具安装boost下载地址:Boost Version History1.选择一个需要的版本,这里我选择的是1.73.0版本2.可以选择这个zip压缩包3.下载压缩包后拷贝到Linux虚拟机里,解压出如下文件,路径不限:4.运行脚本文件生成编译安装程序 "b2"sudo ./bootstrap.sh5.运行编译安装程序 "b2" 并指定安
2022-05-27 17:58:54
3956
原创 跨平台CMake判断当前平台是Linux还是Windows
当我们的工程需要跨平台时(一般都是Linux和Windows双平台),写的CMake也会有所区别,所以需要判断当前的平台,执行不同的构建指令。Cmake本身提供了很多变量来判断当前的系统环境,如图下所示:(图片来自CMake适配多个操作系统(Windows和Linux)_MKleee的博客-优快云博客_cmake 操作系统)我们查看几个变量在不同平台下CMake构建时的值有何不同message("CMAKE_HOST_SYSTEM_NAME: ${CMAKE_HOST_SYSTEM_..
2022-05-26 14:18:45
10212
2
原创 Linux Ubuntu 20.04LTS安装OpenSSL步骤
其实 Ubuntu 20.04LTS 系统自带 OpenSSL 的,但是这个自带的openssl是没有和,对于开发人员编程来说用不了,本文通过2种方法补回头文件和动态、静态库文件。
2022-05-25 18:51:14
64503
17
原创 解决:error LNK2019: 无法解析的外部符号 “void __cdecl boost::throw_exception(class std::exception const &)“
(含CMake配置)解决“error LNK2019: 无法解析的外部符号 "void __cdecl boost::throw_exception(class std::exception const &)" (?throw_exception@boost@@YAXAEBVexception@std@@@Z),该符号在函数”
2022-05-11 14:27:07
3622
1
原创 解决:warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc
(含CMake配置)解决“warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc”问题
2022-05-11 12:05:52
5405
3
原创 Win10系统中使用VS2017编译安装C++ boost库
我以编译安装 boost_1_73_0 版本为例:首先安装VS2017(其他版本也可以),然后下载boost库的源码安装包:boost下载地址:Boost Version History1.选择一个需要的版本,这里我选择的是1.73.0版本2.我们是在Windows环境编译安装可以选择这个zip压缩包3.下载压缩包后,解压出如下文件,路径不限:(我解压到E盘的boost_1_73_0文件夹中)4.打开VS2017的命令行窗口(最好是以管理员身份打开)...
2022-04-18 15:39:16
3641
2
转载 Windows下编译和使用websocketpp
编译安装BoostWebSocketpp依赖于Boost,因此在使用WebSocketpp前需要编译安装Boost。 到 Boost C++ Libraries - Browse /boost-binaries at SourceForge.net 下载稳定版的进行编译。 下载的压缩包解压后进入Boost文件夹中,运行bootstrap.bat脚本。 脚本运行完成后会生成b2.exe,运行b2.exe就会开始编译,编译时间会比较长。。。 默认编译动态库,需要静态库的执行命令:b2 stage -
2022-04-11 13:54:54
2494
原创 Qt中的Connect( )函数的几种写法风格连接信号和槽,处理信号重载
以QPushButton自带的信号QPushButton::clicked()和自定义一个槽函数cppSlot()为例:
2022-03-24 11:01:12
2233
1
原创 Qt中数字由QString转int整形toInt()带参用法
int QString::toInt(bool *ok = nullptr, int base = 10) const返回使用base进制转换为int的字符串,默认值为10进制,必须介于2到36之间,或0。如果转换失败,返回0。如果ok不是nullptr,则通过设置*ok为false报告失败,通过设置*ok为true报告成功。...
2022-02-08 14:35:53
12360
原创 解决TortoiseSVN或者TortoiseGit拉取的文件夹不能完整显示绿色打钩、黄色、红色感叹号、蓝色加号等小图标的问题
突然发现用SVN Checkout过的文件夹不显示任何SVN相关的小图标了,例如:绿色打钩,红色感叹等。
2022-01-05 10:12:23
3103
原创 QT中QProgressDialog进度条对话框设置隐藏取消按钮和禁用右上角“X”关闭按钮、“?”帮助按钮
QT中的进度条对话框,默认设置状态下的QProgressDialog: QProgressDialog oQProgressDialog; oQProgressDialog.setWindowModality(Qt::ApplicationModal);//对本程序模态 oQProgressDialog.setWindowTitle(QString::fromLocal8Bit("请等待...")); oQProgressDialog.setLabelText(QStri
2021-10-08 15:52:01
8072
2
转载 在QT纯代码做UI界面时在QMainWindow中添加控件和布局,均无法显示问题
今天在用QT框架纯代码写UI界面时,遇到在QMainWindow这个类中添加任何可视控件(例如Button、Label),都无法显示,加上布局管理器后也一样,到底是为何?
2021-09-26 17:01:57
6669
原创 虚拟机Ubuntu 18.04配置固定IP地址(ens33网卡,eth0也一样)ping百度
给虚拟机Ubuntu 18.04设置固定IP地址的具体步骤:第一步:将虚拟机的网络适配器设置为自动桥接模式确保VNnet0是自动桥接:第二步:查看自己的网卡名,并配置网络信息*打开终端,输入ip a命令查看网卡名:ip a如上图,2:ens33........................所以我的网卡名就是“ens33”,有些可能叫做“eth0”,名...
2019-11-09 12:48:14
13263
5
原创 C语言实现去掉给定字符串中重复的字符。例如:将 google 转化为 gole
C语言编写一个程序,去掉给定字符串中重复的字符。例如将google转化为gole。#include <stdio.h>#include <string.h>int main(){ char buf[1024]={0}; printf("请输入一个字符串!\n"); scanf("%s",buf); //scanf不能输入带空格的字符串 int l...
2019-10-25 16:12:53
6076
原创 Linux CentOS镜像iso安装包,任意版本官网下载详细步骤图解
官网(http://www.centos.org/)提供三种版本,分别如下:DVD ISO 标准版本(服务器安装推荐使用)Everything ISO 对完整版安装盘的软件进行补充,集成所有软件Minimal ISO Mini版本,只有必要的软件,自带的软件最少。详细步骤:1.首先打开官网:https://www.centos.org/2.点击“橙色的那个按钮”...
2019-09-15 21:54:18
7888
1
原创 STM32单片机极简方法 使用宏定义 代替复杂的重定向printf()函数,实现串口打印。(HAL库例程)
对于 printf() 函数我们并不陌生,初学C语言使用的第一个函数,其作用是在终端打印显示格式化字符串。但是如果我们使用的是单片机运行C语言代码,如果不经任何修改直接使用 printf() 函数,结果是什么现象都没有。要想使用这个函数,常规方法是重定向 printf() 函数,结合串口来打印到串口助手上位机。这里的重定向就非常复杂了,你需要懂 printf() 函数内部实现机制。。。。。(参...
2019-07-30 16:37:57
2523
2
原创 STM32F334高分辨率定时器HRTIM1输出1对互补PWM波详细解析(使用CubeMx配置)HAL库代码
芯片型号:STM32F334C8T6工作频率:72MHzFlash:64KBRAM:16KB内核:ARM Cortex-M4(比M3内核浮点运算能力强好几倍!) 这块芯片看着很像F103C8T6,就连引脚都一模一样,你完全可以直接买F103C8T6的最小系统板,然后只要把原MCU拆下来更换成F334C8T6即可!!如下图: 这块F334是专门针对开关电源的控制而研发的,内部集...
2019-07-28 11:04:08
28464
27
原创 2017全国电赛综合测评四分频电路(一片D触发器74LS74的两种方法,有图有真相,实测波形图)
在"2017 年全国大学生电子设计竞赛综合测评题"的《复合信号发生器》中出现的要求使用1片HD74LS74搭建四分频电路,以下是两种解决方案:使用2个D触发器(1片74LS74芯片)可以用两种方法接成四分频电路方法一:先接成两个二分频电路,再相连就是四分频电路,依次类推可以做成八分频、十六分频...........方法二:直接四分频电路结论:这两种方式都可以实现...
2019-07-24 16:58:14
47416
16
Xilinx ISE 14.7 setup包(含配套的license可解锁全部功能)
2024-08-19
arm-linux-gcc-4.6.4-arm-x86-64交叉编译器安装包(含详细安装教程)
2024-06-06
arm-linux-gcc-4.4.3交叉编译器安装包(含详细安装教程)
2024-06-06
OpenSSL实现AES的ECB和CBC加解密,可一次性加解密任意长度的明文字符串或字节流(QT C++环境)
2024-05-07
Qt使用QWidget重绘实现圆环形渐变色进度条(支持不确定进度模式)
2024-04-08
Axure-chrome-extension
2024-02-18
佳能EF口永诺100mmF2固件v5.4.0(修复在佳能微单RF系统的自动对焦问题)
2023-07-18
ESP8266串口Wifi固件烧录器flash_download_tools_v3.6.5
2019-07-05
2019年5月最新版STM32CubeMx - v5.2.0版本安装包!
2019-05-07
Ubuntu64位的交叉编译工具arm-linux-gcc-4.6.4(附超简单完美安装教程)
2019-01-18
STM32CubeMX v4.27.0版本软件2018年10月最新版官网难下就来这里
2018-11-02
Multisim一键卸载工具不留痕迹任何版本都能轻松卸载不影响再次安装
2018-07-19
win10中ISE14.7的Simulation仿真出错"ERROR:Simulator:861 – Failed to link the design"
2018-06-05
Xilinx ISE 14.7的license.lic文件
2018-06-05
bit文件烧录Digilent.adept.system_v2.15.3(win7win10均可用)
2018-06-05
MATLAB 7.0安装遇到问题如何解决看这
2018-06-05
MATLAB 7.0安装遇到问题如何解决看这
2018-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人