Qt问题集锦

这篇博客汇总了Qt开发中遇到的一些典型问题及其解决方法,包括HTTPS请求失败、数据库驱动加载错误、库路径设置、调试编译选项、版本区分、QML打包、高分辨率屏适配以及Windows环境下VS编译错误的处理。对于开发者来说,这些解决方案能够帮助他们快速解决在Qt项目开发过程中可能遇到的问题。

1、https请求报错

qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed

解决办法:拷贝匡住的动态库到软件运行目录在这里插入图片描述

2、数据库驱动加载失败

Driver not loaded Driver not loaded

解决办法:拷贝plugins/sqldrivers到程序运行目录

3、unix下库搜索目录设置当前路径

QMAKE_LFLAGS += -Wl,-rpath=.
QMAKE_CXXFLAGS += -Wl,-rpath=.

4、启用调试符编译

.pro文件添加修改宏定义:
DEFINES -=QT_NO_DEBUG_OUTPUT # enable debug output

5、编译版本区分

CONFIG(debug, debug|release){
    message("debug")
}
else {
    message("release")
}

6、qml打包

windeployqt.exe/macployqt   app.exe/app  --qmldir=project_dir

PS: 打包完成后,若无法运行,确认打包目录是否包含QtQuick.2,若无,则从qt安装目录拷贝到打包目录

7、高分辨率屏适配

方法一
QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
// 图片方法毛边处理(设置此属性)
//QGuiApplication::setHighDpiScaleFactorRoundingPolicy(Qt::HighDpiScaleFactorRoundingPolicy::PassThrough);
方法二
QCoreApplication::setAttribute(Qt::AA_Use96Dpi); // 固定窗口尺寸,不随分辨率大小变化

8、windows下VS编译qt项目报错: error: C2001: 常量中有换行符

在这里插入图片描述
解决方法:
1、.pro文件添加utf8支持

msvc {
    QMAKE_CFLAGS += /utf-8
    QMAKE_CXXFLAGS += /utf-8
}

2、工具->外部->配置->文件编辑器->行为
在这里插入图片描述
设置bom头

9、启用控制台输出

.pro里添加
# enable console output
CONFIG += console

10、将qt项目转换为vs项目

运行x64_x86 Cross Tools Command Prompt for VS 2019,在控制台输入下面命令
qmake -tp vc xx.pro
PS:qmake位于qt安装目录下bin目录;如果项目包含子目录,需要在xx.pro前添加-r参数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值