
Qt
文章平均质量分 61
Qt知识分享
丢了尾巴的猴子
在这个世界上,一切都预先被谅解了,一切也就被卑鄙的许可了
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Qt 如何从 .ts 文件提取所有源文
在Qt中,.ts文件本身就是用来存储源文(Source Text)和对应翻译的。.ts文件中的<source>标签包含了从你的源代码中提取出来的原始字符串(即源文)。因此,.ts文件已经“包含”了所有需要翻译的源文。但如果你的目标是。原创 2025-07-31 09:02:30 · 325 阅读 · 0 评论 -
项目中引用自建的动态库
在 TestComp 项目中引用。原创 2025-07-29 16:13:00 · 146 阅读 · 0 评论 -
动态库示例
【代码】动态库示例。原创 2025-07-29 16:04:04 · 157 阅读 · 0 评论 -
Qt C++ 全局常量最佳定义方法
将全局常量定义在命名空间中,使用constexpr(C++11 及以上,编译期常量)或const(运行时常量),可以确保良好的封装性和作用域控制,避免全局命名污染。优点作用域明确,避免命名冲突。constexpr提供编译期优化,性能更好。易于维护,适合大型项目。示例// 定义一个命名空间// 编译期常量// Qt 字符串常量// 使用常量// 输出: MyApp// 输出: 5return 0;注意使用替代QString来定义字符串常量,减少运行时开销。原创 2025-07-29 09:01:13 · 418 阅读 · 0 评论 -
静态库 和 共享库
静态库和共享库是两种代码重用方式,主要区别在于链接时机和部署方式。静态库在编译时被链接到可执行文件中,使程序独立但体积较大;共享库在运行时加载,节省空间且便于更新,但需管理依赖。静态库适合独立部署、嵌入式系统和对性能要求高的场景;共享库则适合模块化设计、多程序共享代码和需要频繁更新的情况。实际项目中常结合使用两种方式,根据具体需求选择最佳方案。原创 2025-07-29 08:46:13 · 725 阅读 · 0 评论 -
Qt开发学习笔记04
请注意,在使用 QGraphicsDropShadowEffect 时,需要确保包含 QDialog 的窗口部件(例如 QWidget、QMainWindow 等)具有透明背景,以便阴影效果能够正确显示。),在重写监听事件时,未在方法结束后返回数据。使用QProcess检测IP会有一个问题,QProcess是阻塞形式的,如果IP不通时,虽然能够检测到,但会使程序卡顿,因为只有检测完成后才能继续程序。请注意,静态全局常量的使用需要小心处理,并确保在适当的时间创建和初始化相关对象,以及正确管理对象的生命周期。原创 2024-01-29 11:00:12 · 1154 阅读 · 0 评论 -
Qt 数据库连接池
【代码】Qt 数据库连接池。原创 2023-06-29 13:13:21 · 977 阅读 · 0 评论 -
Reference to incomplete type ‘const QVariant‘ could not bind to an rvalue of type ‘int‘
QVariant`是一种通用的数据类型,可以存储多种不同的数据类型,包括整数、字符串、浮点数等。如果您尝试将一个`int`类型直接赋值给`QVariant`类型的变量,可能需要进行类型转换。`QVariant`类型通常在Qt框架中使用,所以请确保包含了正确的Qt头文件,并在代码中使用了正确的命名空间。根据您提供的信息,似乎涉及到了`QVariant`类型和`int`类型之间的绑定问题。这样可以将`myInt`的值转换为`QVariant`类型并赋值给`myVariant`变量。原创 2023-08-31 16:39:14 · 521 阅读 · 0 评论 -
TCP socket error (The proxy type is invalid for this operation).
在使用QModbusTcpClient连接Modbus TCP设备时,如果您没有配置代理服务器,或者配置的代理类型不正确,就会出现这个错误。有时防火墙可能会阻止应用程序与外部设备建立连接,您可以尝试暂时禁用防火墙进行测试,如果连接成功,则说明防火墙设置可能是问题所在。确认网络环境:如果您在使用Modbus TCP设备时没有使用代理服务器,确保您的计算机和Modbus TCP设备处于相同的网络环境中,并且可以直接进行通信。如果您有更多问题,请随时提问。检查设备状态:在连接设备之前,可以使用。原创 2023-08-31 16:41:59 · 1394 阅读 · 0 评论 -
C++ Qt QModbusClient 的使用
以上是一个基本的使用示例,您可以根据实际需求进行扩展和调整。请注意,Modbus通信涉及到更多的概念和操作,例如设置寄存器地址、处理异常等,请参考Qt的官方文档和Modbus协议的规范进行更详细的了解。这是一个示例的读取请求,您可以根据需要创建读取或写入请求,并通过。根据您的实际情况,选择适当的连接参数函数来设置连接的详细信息。希望这个回答对您有帮助。如果您有更多问题,请随时提问。信号,您可以在连接状态发生变化时获取通知。是可选的,用于管理对象的生命周期。在C++ Qt中使用。原创 2023-08-31 16:43:05 · 2596 阅读 · 3 评论 -
Qt C++ 将qDebug打印输出到D盘的log.txt文件下
的输出重定向到 D 盘下的 log.txt 文件中,你可以使用 Qt 提供的消息处理机制来捕获和处理输出消息。的消息处理函数,它会将不同级别的消息写入到 D 盘下的 log.txt 文件中。输出调试信息时,输出的内容将被捕获并写入到 log.txt 文件中。请确保你的应用程序在运行时具有足够的权限来写入 D 盘中的文件。函数,将自定义的消息处理函数设置为全局的消息处理函数。在上述示例中,我定义了一个名为。如果你还有其他问题,请随时提问。在应用程序中,当调用。原创 2023-12-14 12:45:53 · 966 阅读 · 0 评论 -
Qt开发学习笔记03
在这个例子中,我们创建了一个继承自QObject的Worker类,该类的doWork() 槽函数实现了一个简单的任务。接着,我们使用connect()方法将线程的started()信号连接到Worker对象的doWork()槽函数,该槽函数在新的线程中执行。然后,你可以使用Qt的翻译工具来翻译这些字符串,并将翻译结果保存到对应的翻译文件中。你可以根据需要选择合适的消息框类型,例如information()用于显示信息框,warning()用于显示警告框,critical()用于显示错误框等。原创 2023-12-07 10:09:57 · 1583 阅读 · 0 评论 -
Qt开发学习笔记01
在这个例子中,我们使用std::find函数来查找字符’c’是否在myArray数组中。如果字符存在于数组中,std::find函数将返回指向该字符的迭代器,否则将返回指向数组末尾的迭代器。我们可以使用std::end函数来获取数组的末尾迭代器,然后将其与std::find函数的返回值进行比较,以确定字符是否存在于数组中。函数原型为:void QTableWidget::sortItems(int column, Qt::SortOrder order = Qt::AscendingOrder)原创 2023-12-07 10:09:19 · 1171 阅读 · 0 评论 -
Qt开发学习笔记02
在C++中,可以使用QString的chop()函数来删除最后一个字节。这个函数会将字符串的长度减小一个字节,并且移除最后一个字符。在上述代码中,我们定义了一个QString对象str,并赋值为"Hello World"。然后调用chop()函数,传入参数1,表示删除一个字节。执行完毕后,str的值将变为"Hello Worl",最后一个字节已被删除。原创 2023-12-07 10:03:02 · 1302 阅读 · 0 评论 -
Qt开发学习笔记02
在C++中,可以使用QString的chop()函数来删除最后一个字节。这个函数会将字符串的长度减小一个字节,并且移除最后一个字符。在上述代码中,我们定义了一个QString对象str,并赋值为"Hello World"。然后调用chop()函数,传入参数1,表示删除一个字节。执行完毕后,str的值将变为"Hello Worl",最后一个字节已被删除。原创 2023-10-09 12:57:15 · 445 阅读 · 0 评论