Qt
记录学习qt中发现的问题及解决办法。
草丛中的蝈蝈
这个作者很懒,什么都没留下…
展开
-
ubuntu16.04上搭建qt开发环境
但是启动qt时,最好不要直接执行qtcreator文件,qtcreator所在目录下还有一个qtcreator.sh脚本文件,qtcreator.sh脚本文件里不仅会启动qtcreator,还会设置一些和qt相关的环境变量,使用起来更方便。另外,启动时使用root用户启动,因为linux下访问USB设备等需要root用户权限。原创 2024-06-28 18:31:07 · 424 阅读 · 0 评论 -
QIntValidator不生效
在Qt 5.12.4中对QLineEdit使用QIntValidator,实际并未生效。重写validate方法。原创 2024-03-13 16:00:31 · 405 阅读 · 0 评论 -
qt中使用QCustomPlot库编译报错“error: undefined reference to `__imp__ZN8QPrinterC1ENS_11PrinterModeE‘”
qt中使用QCustomPlot库编译报错“error: undefined reference to `__imp__ZN8QPrinterC1ENS_11PrinterModeE’”工程中缺少相关底层库支持。原创 2023-12-12 10:43:43 · 425 阅读 · 0 评论 -
qt编译报错“undefined reference to `vtable for MyLogger‘”
以前封装了一个MyLogger类,基类为QObject,将MyLogger类移植到新工程后,编译报错:qt编译报错“undefined reference to `vtable for MyLogger’”。将MyLogger类添加到新工程时,只添加了.cpp文件,未添加.h文件。将.h文件也添加到工程中。原创 2023-10-23 15:57:12 · 75 阅读 · 0 评论 -
qt中添加界面元素后,运行时看不到该界面元素
删除工程目录下的ui_mainwindow.h文件,重新qmake,rebuild。在工程目录下和编译目录下同时出现ui_mainwindow.h文件,发生冲突。原创 2023-07-25 16:54:11 · 913 阅读 · 0 评论 -
windows下qt使用库文件编译报错“error LNK2019: 无法解析的外部符号 __imp_DeregisterEventSource,该符号在函数”
【代码】【无标题】原创 2023-06-01 18:20:52 · 586 阅读 · 0 评论 -
无法解析的外部符号 __imp_WSAStartup,该符号在函数
windows下编译第三方库,报错“无法解析的外部符号 __imp_WSAStartup,该符号在函数”等错误。原创 2023-06-01 18:12:26 · 948 阅读 · 0 评论 -
qt报错“xxx.lib(Appender.obj):-1: error: LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1900”(main.obj ”
在使用一个第三方库的静态库时,qt报错“xxx.lib(Appender.obj)👎 error: LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1900”(main.obj ”编译第三方库的msvc版本和编译调用第三方库的程序的msvc版本不一致。使用相同的msvc重新编译库和程序。原创 2023-05-31 16:45:56 · 652 阅读 · 0 评论 -
qt中调试动态链接库
qt中调试动态链接库原创 2023-05-23 17:52:44 · 943 阅读 · 1 评论 -
qt程序报“error: C2011: “sockaddr”:“struct”类型重定义
winsock库和winsock2库冲突。原创 2023-05-04 18:48:08 · 1470 阅读 · 0 评论 -
qt工程中使用libmodbus库
qt工程中使用libmodbus库原创 2023-04-02 15:43:04 · 945 阅读 · 0 评论 -
qt中ctrl+shift+f组合键失效
将搜狗中ctrl+shift+f组合键改为ctrl+shift+其它按键即可。qt中ctrl+shift+f组合键失效。和搜狗输入法中的快捷键冲突。原创 2023-01-31 09:33:02 · 428 阅读 · 0 评论 -
qt中将样式表添加到资源中并使用
注意:路径只能使用path格式,不能使用url格式。原创 2023-01-29 10:50:23 · 440 阅读 · 0 评论 -
qt中QLabel使用setWindowTitle时单步调试到该行时会卡住
暂未找到,后来发现函数用错了,应该用setText,用setText时无此问题。qt中QLabel使用setWindowTitle时单步调试到改行时会卡住。原创 2023-01-28 16:11:09 · 228 阅读 · 0 评论 -
QAudioDeviceInfo::availableDevices发现不了设备
在main函数里增加了调用QAudioDeviceInfo::defaultOutputDevice()的代码,如果把defaultOutputDevice调用放在QApplication a(argc, argv);代码行前面会出现问题,放在QApplication a(argc, argv);内部具体的原因不明。在main函数里使用QAudioDeviceInfo::availableDevices发现音频设备,代码以前测试功能正常。过了一段时间,测试时突然就发现不了设备。原创 2022-12-31 16:08:02 · 520 阅读 · 0 评论 -
Qt程序中调用C#编写的dll
为此,写一篇Demo,希望对查找该资料的人有帮助吧。最近在使用Qt整合以前的一个工具时,发现有几个dll是采用C#写的,当然可以把C#写的dll重新在Qt中用C++写,虽然这是几个C#写的dll的函数接口使用的参数都比较简单,只用了int和string类型等,但在函数内部却还使用了C#的专用一些类,如果重写还是很麻烦,就查找了一些文章,多数都是说采用把C#写的dll采用COM注册方式让Qt调用,但是这样又要重新编译以前的C#项目,实在是很麻烦,所以是否有种方式可以直接利用以前C#写的dll呢?转载 2022-12-13 13:57:33 · 1197 阅读 · 0 评论 -
Qt之调用C#的动态库
这里编写完成后生成dll,然后非常重要的一步来了,将ClassLibrary1.dll、ClassLibrary2.dll、ClassLibrary2.lib准备复制到运行的Qt执行目录下,如果没有在同一个目录下,在ClassLibrary2调用ClassLibrary1时会找不到ClassLibrary1.dll文件而报错。原文链接:https://blog.csdn.net/qq_41399894/article/details/120721935。将平台下的linux、Mac取消勾选。转载 2022-12-13 11:22:34 · 850 阅读 · 0 评论 -
qt调用python脚本中的函数
将#include 行放到main.cpp最前面。解决办法:把myPythonFile.py放在可执行文件所在目录下。错误1:PyImport_ImportModule返回空指针。原创 2022-11-18 18:24:33 · 1084 阅读 · 0 评论 -
qt中调用matlab生成的动态库
vc中调用matlab生成的动态库现在在qt中调用matlab生成的动态库,和在vc中基本一致。新建qt widget工程;拷贝matlab编译生成myadd.h和myadd.lib文件到QT工程目录下;拷贝matlab生成的myadd.dll和myadd.ctf(必须要有,负责运行时初始化dll库会失败)文件到QT可执行文件所在目录下;在工程文件*.pro中增加如下几行内容:编写测试代码:. . . if(!return 0;return;}编译;原创 2022-11-17 20:06:52 · 1516 阅读 · 0 评论 -
三种方式在C++中调用matlab
c.在VC中选择:工程->设置,选择属性表Link 选项,下拉菜单中选择Input,在对象 / 库模块中加入libmmfile.liblibmatlb.lib libmx.lib libmat.lib libmatpm.lib sgl.lib libmwsglm.liblibmwservices.lib , 注意用空格分开;在工程实践中,C/C++调用Matlab 的方法主要有调用Matlab 计算引擎、包含m 文件转 换的C/C++文件,以及调用m文件生成的DLL 文件。转载 2022-11-16 09:20:00 · 3621 阅读 · 0 评论 -
在工程中使用QCustomPlot的方法
【代码】QCustomPlot的使用方法。原创 2022-11-11 14:41:02 · 195 阅读 · 0 评论 -
如何打开.qch文件
qch是QT帮助文档的格式。原创 2022-11-11 11:33:04 · 978 阅读 · 0 评论 -
qDebug常用的预定义宏
打印当前函数的名字,不是全称。打印当前文件的相对路径。打印当前函数的全称名字。原创 2022-11-09 17:11:22 · 419 阅读 · 0 评论 -
error: C2027: 使用了未定义类型“Ui::WndDataManage”
qt中新建了一个设计师界面类A, 后来想把A的名称改为B, 修改了.h、.cpp及.ui文件及类名成后,仍然报错error: C2027: 使用了未定义类型“Ui::WndDataManage”。还需要在设计器里将对应窗口的根节点的名称改一致。原创 2022-11-07 14:23:17 · 1092 阅读 · 2 评论 -
error C2280: “MyBuffer::MyBuffer(const MyBuffer&)”: 尝试引用已删除的函数
自定义一个MyBuffer类,给MyBuffer类型的成员变量添加getter函数后,编译报错:“error C2280: “MyBuffer::MyBuffer(const MyBuffer&)”: 尝试引用已删除的函数”默认的getter函数返回普通类型,修改为返回引用类型即可。原创 2022-10-17 20:42:19 · 496 阅读 · 0 评论 -
qt widget程序中使用printf无法打印调试信息
qt widget程序中使用一个c语言库,调试时使用printf打印信息,无法输出打印信息,按网上说两种方法都不行。在pro文件中增加“CONFIG += console”原创 2022-09-06 13:56:18 · 1499 阅读 · 0 评论 -
qwt库的编译和使用
环境:win10 64位 + vs 2015 + qt5.9.9 + qwt 6.2。可以不管,因为需要的库文件已经生成了。原创 2022-08-08 18:13:22 · 521 阅读 · 0 评论 -
Exception at 0x7fefd73a49d, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continue
在调试器中运行程序时,如果程序产生异常,调试器会首先获得通知(即First-chance exception),而后此异常由产生它的程序负责捕获。通常见到的“First-chance exception”一般是“0xC0000005: Access Violation”,“0xC00000FD: Stack Overflow”等,这些都说明程序中有缺陷,需要修正。并且,这些API中都有捕获SEH的代码,产生的异常不会对程序造成影响。win7 64位 + vs2013 + qt 5.9.1。...原创 2022-08-08 10:35:28 · 3637 阅读 · 0 评论 -
QWT下载、安装、配置教程
MSVC版使用的是VS的编译器,需要额外安装VS,但官方提供的creator都是用MSVC编译(包括mingW版),所以关于Qt Creator的插件,必须使用MSVC编译,才能被识别。文件加载完成之后,点击项目,将默认的Debug模式改为Release模式,并将构建目录更改为D:\QT5.14\QWT,(这里特别注意,这个目录就是以后你的qwt库的目录,之后相关的dll文件,以及头文件都会放到这里,所以这个目录不能随便建,我这里是建到QT的安装根目录下面的)2、接下来关闭Qt Creater重新打开。..原创 2022-08-05 09:19:25 · 995 阅读 · 1 评论 -
qt中使用sqlite同时打开多个数据库文件
代码】qt中使用sqlite同时打开多个数据库文件。原创 2022-07-26 23:55:51 · 1337 阅读 · 0 评论 -
QDoubleValidator不生效问题解决办法
使用QIntValidator正常,换为QDoubleValidator后不生效,看网上说的增加这行setNotation(QDoubleValidatorStandardNotation);好像也没什么作用,只好自己写了一个,目前测试感觉还行。重载QDoubleValidator。原创 2022-07-26 22:39:07 · 1952 阅读 · 1 评论 -
qt里调用win32函数
代码】qt里调用win32函数。原创 2022-07-19 11:21:27 · 1157 阅读 · 0 评论 -
C1083: 无法打开包括文件:“corecrt.h”
问题win10+vs2015+qt5.12.1环境下,新建qt程序报错解决方案.pro文件里添加INCLUDEPATH+=“C\ProgramFiles(x86)\WindowsKits\10\Include\10.0.15063.0\ucrt”LIBS+=-L"C\ProgramFiles(x86)\WindowsKits\10\Lib\10.0.15063.0\um\x64"LIBS+=-L"C\ProgramFiles(x86)\WindowsKits\10\Lib\10.0.1。...原创 2022-07-15 21:21:38 · 1299 阅读 · 0 评论 -
qt程序运行时无任何错误提示信息,但是无法进入main函数
问题:开发环境:win7 + vs2013 + qt 5.9.1 + 64位程序qt程序运行时无任何错误提示信息,但是无法进入main函数。原因:程序中使用了visa库,使用的库的版本有问题。原创 2022-07-11 10:31:51 · 1076 阅读 · 0 评论 -
windows下发布qt程序步骤
【代码】windows下发布qt程序步骤。原创 2022-07-07 15:42:09 · 276 阅读 · 0 评论 -
qt单步调试时,调试位置和代码行不一致
问题:qt单步调试时,调试位置和代码行不一致,不如:会跳到已经注释的代码行上,重新构建多次,无效。解决办法:直接把可执行文件所在目录下内容清空,重新构建。原创 2022-05-23 20:08:26 · 567 阅读 · 0 评论 -
qt报错“push_back”: 2 个重载没有“this”指针的合法转换”
问题:在类的const成员函数里向QVector类型的数据成员添加数据时,报上述错。解决办法:可以通过const_cast转换QVector类型的数据成员的指针来添加数据。原创 2022-05-21 20:12:01 · 1179 阅读 · 0 评论 -
QLabel显示多行文本
问题:QLabel显示文本过长时会被截断。解决办法:在设计器里找不到设置的地方,可以直接用代码设置ui->label2.setWordWrap(true);原创 2022-05-21 16:45:00 · 3079 阅读 · 0 评论 -
qt正则表达式
常见元字符:. 匹配除换行符以外的任意字符\w 匹配字母或数字或下划线或汉字\s 匹配任意的空白符\d 匹配数字\b 匹配单词的开始或结束^ 匹配字符串的开始$ 匹配字符串的结束[] 匹配括号内输入的任意字符. 例如[123],只要是1, 2 ,3,12,23都满足() 表示一个集合,用于提取匹配的字符串,表达式中有几个()就有几个相应的匹配字符串。限定重复元字符:* 重复零次或更多次, 例如, 1*2可以为任意数量个1(甚至没有), 后面跟一个2原创 2022-05-17 16:39:38 · 283 阅读 · 0 评论 -
qt信号和槽函数connect成功,信号也发送出去,槽函数进不去
问题:qt信号和槽函数connect成功,信号也发送出去,槽函数进不去。原因:信号的类型为QVector& ,参数为引用类型,去掉引用后,可以进入。原创 2022-05-11 15:02:07 · 1436 阅读 · 0 评论