自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (2)
  • 收藏
  • 关注

原创 CMake Boost 名称不匹配警告

CMake Boost 警告

2024-03-19 15:40:03 347

原创 消除CMake Boost 警告:新的Boost版本可能有不正确或缺失的依赖项和导入

CMake Boost 新版本警告

2024-03-19 15:34:03 708

原创 mongocxx连接池连接超时时间设置

MongoDB连接池的超时时间设置在连接字符串中设置,并且在进行通信时才会真实建立连接。

2023-09-07 11:37:17 436

原创 关于QTreeView使用自定义Tree Model时,插入子项目时,扩展箭头不显示的问题

在使用自定义的TreeModel显示数据时,添加子项目后,扩展箭头不显示,但是点击原来扩展箭头在的地方时,树仍能够展开添加的子项目。

2023-06-15 16:56:19 485

原创 在线安装Qt,部分版本显示为灰色,无法选择

【代码】在线安装Qt,部分版本显示为灰色,无法选择。

2023-03-23 11:42:11 1865 2

原创 临时禁用clang-format

禁用clang-format

2022-05-30 09:58:54 2555

原创 VS打开Qt ui文件后弹出无法打开文件的问题

新的qt vs插件在打开Qt ui文件后,qt designer的窗口虽然打开,但过几秒后突然关闭,并且显示无法打开文件。解决方案:1. 右键点击ui文件,打开右键菜单,选择打开方式:2.在打开的窗口中点击“添加按钮”,打开添加程序窗口:3.点击…按钮,选择designer.exe:4.点击确定后,打开方式页面中多了个 Qt Designer 选项,选中它,并设为默认,点击确定。之后再次双击打开ui文件,不会再自动关闭了。...

2021-11-29 11:23:54 2740 3

原创 CMake为项目添加分类

set_property(TARGET MyExample1 PROPERTY FOLDER “Examples”)set_property(TARGET MyExample2 PROPERTY FOLDER “Examples”)

2021-04-07 11:01:52 242

原创 CMake打印可见所有可见变量和环境变量

打印可见变量及其值get_cmake_property(_variableNames VARIABLES)foreach (_variableName ${_variableNames}) message(STATUS "${_variableName}=${${_variableName}}")endforeach()打印环境变量及其值execute_process(COMMAND "${CMAKE_COMMAND}" "-E" "environment")...

2021-04-06 10:19:32 3503

原创 Qt5.15.1 QPushButton样式表bug

当在QPushButton中使用padding时,会导致按钮padding范围内的鼠标点击失效,只有点击按钮中心位置时才能触发clicked信号。bugreport

2020-09-27 10:40:30 366

原创 pybind11创建二维数组

创建一个200x4的二维复数数组ssize_t shape = 200;ssize_t ndim = 4;std::vector<ssize_t> vec{ shape, ndim };py::array_t<std::complex<double>> buffer(shape);

2020-05-25 13:52:57 1324

原创 在VS中配置protobuf自定义生成工具

首先,在vs中建立一个c++项目,这里项目名称为test,将protobuf相关的头文件库文件配置好,这里采用的项目路径设置如下所示:test\test\proto 目录存放*.proto文件test\test\protocpp 目录存放生成的*.pb.h和*.pb.cc文件test\lib\include 目录存放protobuf的头文件test\lib\lib 目录存放protobu...

2020-03-20 17:46:16 2687 2

原创 C++ protobuf在输出的头文件中包含自己的头文件和导出符号

protobuf提供了在输出的文件中添加导出宏的方法:.\protoc.exe .\Device.proto --cpp_out=dllexport_decl=MY_EXPORT:.\但是很多情况下,这个这个宏都是定义在一个头文件中的,而protobuf并没有提供一个可以在输出的头文件中包含另外的头文件的方法。所以我对protobuf的源码进行了修改,为cpp_out参数添加了includ...

2020-02-15 11:18:15 2234

原创 VS2019+Qt5.14 qmake编译错误

最近更新的Qt5.14在VS2019下出现编译错误:C:\Users\jose\AppData\Local\QtMsBuild\qt_vars.targets(246,5): error MSB4018: The "GetVarsFromMakefile" task failed unexpectedly.C:\Users\jose\AppData\Local\QtMsBuild\qt_var...

2019-12-16 14:09:17 5681

原创 使用C++17的并行算法库加速应用程序

VS2019已经支持C++17标准,在C++17中可以更加轻松的使用并行算法。在通常情况下,我们一般使用for循环对容器内的值进行计算,例如:#include <iostream>#include <vector>#include <execution>#include <chrono>int main(){ auto count ...

2019-11-07 16:09:52 1920

原创 VS2015、VS2017和VS2019之间的二进制兼容性

VS2015之后的运行库主版本号都是14,微软为其保留了二进制兼容性。所以,在VS2019下使用VS2015和VS2017的库无需再次进行编译即可直接使用。因此,在VS2019下使用VS2017的Qt是没有问题的,无需自己编译Qt库。微软的说明文档...

2019-11-04 17:06:02 17547 1

原创 Qt线程池,QThreadPool的QRunnable通用继承模版

之前每次使用QThreadPool的时候,对于不同的功能,都要基础不同的QRunnable子类,写起来太烦了。写了一个模版,方便需要在线程池中调用的普通函数使用template <typename Func, typename ...Args>class MyRunlable : public QRunnable{public: MyRunlable(Func func, ...

2019-10-11 17:47:21 411

原创 c++20 concept

Visual Studio 2019今天发布了16.3版本更新,加入了C++20的concept支持,在此记录一下concept的用法:1.限制只能打印int类型//std::enable_if实现template <typename T>void print_int(std::enable_if_t<std::is_same_v<int, std::decay_t...

2019-09-25 00:03:38 4060

原创 Qt connect重载信号

Qt以函数地址连接的方式连接存在重载的信号函数时,会产生重载歧义,编译器无法确定要连接的重载信号是哪一个。可以通过以下两种方法来消除重载歧义,这里以QLocalSocket为例:QLocalSocket clientconnect(&client , qOverload<QLocalSocket::LocalSocketError>(&QLocalSocke...

2019-09-12 11:16:28 1177

原创 有道词典导致Qt程序卡死,并且内存泄漏问题

有道词典导致Qt程序卡死的问题我已经发现了一段时间,之前以为是自己程序的问题,后面多方验证才发现这个问题是我更新到Qt5.12后产生的。下面是该bug的重现条件:1.打开有道词典,将屏幕取词开关打开2.在自己的程序中添加一个QTreeView或者QTreeWidget,并且添加一些数据没错,这个bug主要是在QTreeView或QTreeWidget上引发,其他控件我还没有发现存在该问题...

2019-09-09 17:28:49 5104 13

原创 VS DLL文件和EXE文件添加文件版本信息

在VS中可以通过添加资源,然后再在资源中添加Version来显示exe或者dll的版本信息。Version的编辑界面如下图所示:编译工程后可以查看dll的属性信息,上面编辑好的信息已经显示在属性界面上了:单个工程当然就在这里直接编辑信息就好了,如果是多个工程的情况下,每次升级软件版本都要去修改每个Version的信息,不仅麻烦,而且容易出错和漏改。在vs中右键点击rc文件,选择打开方...

2019-09-09 11:29:02 4225

原创 QTabWidget的tabbar右侧背景色设置

在设置qss样式的过程中发现,QTabWidget的tabbar右侧空白区域的颜色总是无法设置,如下图框选区域所示:后面研究发现,这片区域其实是QTabWidget的背景区域,也就是通过stylesheet中的background属性控制的,不过简单的设置background并不能修改该区域的颜色。我发现QTabWidget是继承于QWidget的,而在stylesheet文档中有这么一段话...

2019-09-04 09:56:35 3471 7

原创 QLineEdit的右边添加按钮

  做项目的时候,很多时候会遇到要在编辑框的右边添加一个按钮,用于弹出其他窗口选择内容后再填入编辑框,一种做法是添加一个QLineEdit再在后面加一个QPushButton然后进行布局,但这样不太好看。  其实QLineEdit是支持在右边添加按钮的。实现代码如下: QLineEdit* editor = new QLineEdit(parent); QToolButton* btn = ...

2019-08-21 14:28:12 4434 1

原创 Qt IP输入框

最近做项目需要用到IP输入框,不过用QLineEdit做的时候,发现效果不怎么好,于是仿照windows的IP输入框定制了一个。stylesheet可以按照QLineEdit来写。源代码下载地址:https://download.csdn.net/download/oluojinfanhua12/11554732...

2019-08-15 11:28:00 396

原创 MongoDB C++ Driver取值模版

项目中遇到了使用mongodb存储软件执行记录的需求,在调用mongodb的c++ driver进行数据查询时,从mongodb中取值的方法如下:try{ auto cursor = collection.find({}); for(row : cursor) { struct record; record.ident = QString::fromStdString(bson...

2019-08-09 16:27:19 449

原创 QTabWidget设置qss修改了tab的字体大小时,tab的文字显示不全问题

QTabWidget设置qss修改了tab的字体大小时,tab的文字显示不全问题修改tab字体大小的qss如下所示:预览窗体后,tab上的文字被遮挡:修改QTabBar的字体也为25px,代码如下:QTabWidget QTabBar::tab{ font-size:25px;}QTabWidget QTabBar{ font-size: 25px;}运行预览窗体后...

2019-08-07 15:50:35 7175 4

原创 C++ Builder调用VS2019编译的动态库

C++ Builder调用VS2019编译的动态库最近遇到客户使用C++Builder 6调用我们使用VS开发的C接口的动态库时,发生链接错误,找不到函数地址的问题。报出的错误如下所示,错误关键字是 contains invalid OMF record, type 0x21 (possibly COFF)通过查找资料发现,C++Builder调用VS的库需要使用implib工具进行转换,...

2019-08-07 15:20:42 1526

Protobuf.vsix.zip

可以在vs2019中编辑protobuf的proto文件,对proto关键字高亮并且显示智能提示,对不符合语法规则的语句进行错误提示

2020-03-04

Qt实现windows IP输入框,非QLineEdit

Qt实现windows IP输入框(IPV4),不是使用的QLineEdit设置inputmask实现

2019-08-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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