![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
QT之路
文章平均质量分 54
我不是程序猿儿
平淡地看待超出自己能力外的事
展开
-
【QT】QT编写应用的界面自适应分辨率的解决方案
网上找到的简单可行方案,实现步骤如下:step1:工程目录下新建qt/etc/qt.conf文件,写入如下内容.step2:将其加入资源文件中,即添加Qt Resource File,如下图所示step3:编译,在测试机上发现问题解决。缺点: 在客户机上对比,发现自适应后的界面上字体清晰度不如之前。原创 2024-07-10 15:54:14 · 250 阅读 · 0 评论 -
【QT】QTableWidget里的cellDoubleClicked(int,int)和itemDoubleClicked(QTableWidgetltem*),QTableWidgetItem对象
【QT】QTableWidget里的cellDoubleClicked(int,int)和itemDoubleClicked(QTableWidgetltem*),QTableWidgetItem对象原创 2024-07-03 15:30:13 · 344 阅读 · 0 评论 -
【QT】QCheckBox的click、clicked 和 animateClick
click():这是一个槽函数。调用它会模拟一次点击动作,立即切换复选框的状态,并发出clicked信号。clicked:这是一个信号。当用户点击复选框时,无论状态如何改变,都会发出此信号。信号携带一个布尔参数,表示复选框的状态(选中或未选中)。:这是一个槽函数。调用它会模拟一次点击动作,并在指定的时间内显示点击动画。这种方式下也会发出pressedreleased和clicked信号。通过这些方法和信号,您可以灵活地控制和响应QCheckBox的点击事件。原创 2024-07-01 09:27:39 · 194 阅读 · 0 评论 -
【QT】QCustomPlot库中iSelectPlottables的使用
QCP::iSelectPlottables 是 QCustomPlot库中的一个枚举值,用于控制选择交互。是一个用于创建绘图和数据可视化的Qt库。允许用户选择图表中的绘图对象(如图形、曲线、柱状图等)。原创 2024-06-25 11:20:47 · 306 阅读 · 0 评论 -
【QT】qcustomplot的清除图层里表数据的方法,及错误分析
该容器提供了对图表数据的访问。方法返回的是一个智能指针,智能指针的。方法将返回其原始指针。返回原始指针,从而允许调用。访问并清除底层数据。原创 2024-06-21 15:24:47 · 385 阅读 · 0 评论 -
【QT】C++单冒号‘:’和双冒号‘::’的大白话讲解
在C++编程中,双冒号 () 和单冒号 () 是 各自有不同的用途。原创 2024-06-19 17:24:21 · 541 阅读 · 0 评论 -
【QT】C++ || 左值引用、右值引用、移动语义、完美转发
左值引用是指向一个已有对象的引用,可以通过左值引用对对象进行修改。左值是指一个有持久内存地址的对象。右值引用是用于引用一个将要被销毁的临时对象,右值是指那些没有持久内存地址的对象(如临时对象、字面值、表达式的结果)。移动语义通过右值引用()实现资源的移动,避免不必要的拷贝,提高性能。完美转发通过保持参数的原始属性,实现高效调用。语法是编程语言的规则和结构,规定了如何正确书写代码。语义是程序的意义和行为,描述了代码在运行时的效果和功能。理解这些概念对于编写高效、健壮的C++代码至关重要。原创 2024-06-19 09:34:00 · 739 阅读 · 0 评论 -
【QT】浅析Qt应用程序的主函数,Qt应用程序启动流程
为了更好地理解,假设int id;// 其他成员变量初始化Qt应用程序对象。注册自定义类型以便在Qt的元对象系统中使用。创建并显示主窗口。启动事件循环,等待和处理用户事件。这段代码是一个标准的Qt应用程序启动流程,确保了应用程序正确初始化和运行。注册自定义类型使得这些类型可以在信号和槽、以及其他需要元对象系统支持的地方使用。原创 2024-06-07 11:10:26 · 740 阅读 · 0 评论 -
【QT】qcombox的信号使用小细节,activated(int)和currentIndexChanged(int)
仅在用户通过界面选择项时触发,不包括程序代码修改当前选项的情况。在任何当前索引变化时都会触发,包括用户交互和程序代码修改。通过这两个信号的区别,可以根据不同的需求选择合适的信号来处理QComboBox的变化。例如,如果需要在用户选择时进行特定操作而不考虑代码修改,可以使用;如果您需要在任何索引变化时都进行处理,则使用。原创 2024-05-30 14:52:36 · 686 阅读 · 0 评论 -
【QT】QStackedWidget一利器,常在项目中的使用
是 Qt 中用于层叠多个子窗口或页面的部件,但只显示其中一个。这个组件通常用于创建具有多个步骤或多个不同视图的向导式界面。用户可以切换视图,但一次只能看到一个视图。原创 2024-04-29 15:39:32 · 1063 阅读 · 0 评论 -
【QT】QPointF、QRectF、QPolygonF 介绍
QPointF确实存在于 Qt 框架中,它是一个类,用于表示二维空间中的一个点,其中包含了浮点精度的 x 和 y 坐标。原创 2024-04-24 14:11:45 · 1431 阅读 · 0 评论 -
【QT】串口通信,usb通信QSerialPort::TimeoutErro超时问题
在处理时,通常不需要重启整个软件。这种错误通常指出在进行串口操作(如读取或写入)时超时,但它不一定意味着串口设备出现了不可修复的错误。应该根据具体的错误情况采取合适的错误恢复策略。原创 2024-04-24 09:54:54 · 750 阅读 · 0 评论 -
【QT】QtConcurrent的使用介绍,与std::thread的区别
线程管理使用 Qt 的线程池,对于多数应用场景来说,这简化了线程的使用并优化了资源管理。提供更基础和直接的线程控制,适用于需要手动管理线程生命周期的情况。集成与兼容性与 Qt 的其他部分(如事件循环)集成良好,特别适用于 Qt 应用程序。是 C++标准的一部分,可以在任何 C++项目中使用,不依赖于 Qt。错误处理和安全性使用可以较容易地通过QFuture监视线程状态,而使用通常需要开发者自行处理线程同步和错误管理。根据具体需求选择合适的工具,如果是在 Qt 环境中并且不需要精细控制线程行为,原创 2024-04-22 10:43:08 · 767 阅读 · 0 评论 -
【QT】关于qcheckbox常用的三个信号,{sstateChanged(int) clicked() clicked(bool)}达成巧用
使用时,可以精确到复选框的三种状态变化,适用于需要区分未选中、部分选中和完全选中状态的场景。使用无参数的clicked()时,仅需要知道复选框被点击,而不关心其状态如何变化。使用时,可以直接获得复选框改变后的选中状态(是或否),适用于需要根据复选框的最新状态执行操作的场景。这些信号为开发者提供了灵活的方式来处理用户与复选框的交互。原创 2024-04-16 15:01:17 · 1804 阅读 · 0 评论 -
【QT】QChartView和QChart的一些图表设置
在 Qt Charts 中,QChartView类提供了一些方法和属性来控制图表的渲染和交互行为。这些方法包括和,它们分别用于改善图表的视觉质量和增加图表的交互性。原创 2024-04-16 11:24:37 · 861 阅读 · 0 评论 -
【QT】Qt Charts的实际使用中的一些小细节完善如:resetZoom、fitInView
在Qt中, 使用 Qt Charts来创建和操作图表,重置图表缩放状态的功能可以通过调整图表视图的缩放比例来实现。Qt Charts中的。具体实现可能需要根据你的应用程序的实际架构和需求进行调整。另外,确保你的Qt项目包含了Qt Charts模块。扩展的部分:可以根据窗口的大小变化自动调整图表的大小和比例,以确保图表始终适合可视区域。提供了相关的方法来控制图表的缩放和平移。是重置图表视图的缩放到默认状态。,当点击这个按钮时,会触发图表视图的缩放重置。需要替换为实际的窗口尺寸变化事件或信号。原创 2024-04-09 15:07:22 · 354 阅读 · 0 评论 -
【QT】QChart初步使用;QChart、QLineSeries 和 QChartView的关系讲解
是三个核心组件,它们共同工作以创建和显示图表。简而言之,创建数据系列来存储数据,使用。则容纳和管理一个或多个数据系列(如。来组织和处理这些系列,然后通过。在 Qt Charts 框架中,在用户界面中展示这个图表。原创 2024-03-29 14:06:00 · 663 阅读 · 0 评论 -
【QT】对比C#的ArrayList,qt中也有自己的通用容器(若有误,恳请直接指出)
在Qt中,可以使用QList或来代替C#中的ArrayList。QList是Qt中的一个通用容器类,类似于C#中的List,但它不是类型安全的。另一方面,是的别名,用于存储可以包含任何类型的QVariant对象的列表。由于您的C#代码中ArrayList存储了不同类型的数据(整数和字符串),在Qt中使用可能更合适。原创 2024-03-06 17:11:12 · 563 阅读 · 0 评论 -
【QT】QTableView或QTableWidget 搭配QLineEdit实现数据的搜索显示
如果需要处理的数据量较大,或者需要高度定制化的表格(例如,不同类型的数据,复杂的渲染逻辑等),QTableView配合自定义模型和过滤器模型是更合适的选择。如果你的需求相对简单,数据量不大,通过手动过滤可能就足够了。在任何情况下,实现搜索功能通常涉及到监听搜索框的输入变化(例如使用QLineEdit),然后根据输入的内容更新表格的显示。在QTableView的情况下,这通常意味着设置过滤器模型的过滤规则;而在的情况下,则可能需要遍历表格项并手动隐藏或显示行。原创 2024-03-01 14:35:57 · 1156 阅读 · 0 评论 -
【QT】• QSerialPort的waitForBytesWritten和waitForReadyRead使用
类中的和是同步阻塞函数,用于等待串口写入操作完成和等待新数据可读取。这些函数在特定情况下非常有用,但它们的使用需要根据具体的应用场景和通信需求来决定。原创 2024-02-27 17:46:01 · 2423 阅读 · 2 评论 -
【QT】关于QSerialPort的错误处理 (Error Handling)及错误类型
是 Qt 框架中用于串口通信的类,它提供了与串行端口进行数据读写和配置的功能。这个类封装了底层操作系统对串口的处理,使得开发者可以方便地在跨平台应用中实现串口通信。原创 2024-02-27 17:34:40 · 2527 阅读 · 0 评论 -
【C++】标准库函数std::move
移动语义(Move Semantics)是C++11中引入的一种机制,允许资源(如动态分配的内存、文件句柄、套接字等)从一个对象转移到另一个对象。这种机制可以提高性能,避免在对象赋值或传递时的不必要的资源复制。原创 2024-02-21 14:23:20 · 414 阅读 · 0 评论 -
【QT】C++和C#在运算符上的一些区别
buffStr.Contains( “40”)) & (string.IsNullOrEmpty(pStr))和(!buffStr.contains( “40”)) && (pStr.isEmpty())总的来说,这两个表达式在逻辑上是相同的,只是在具体的语法和操作符选择上有所不同,因为它们分别属于不同的编程语言。这两个表达式是在不同的编程语言中使用的,并且它们在逻辑上是等效的,但具体的语法和风格有所不同。为空,那么条件成立。逻辑上,这两个表达式的含义是相同的,都表示如果。不包含特定的字符串(原创 2024-01-16 15:38:06 · 450 阅读 · 0 评论 -
【QT】qt中存储任何类型的数组QVector
为我们提供了动态数组的功能,允许我们在运行时灵活地管理和访问数据。是一个动态数组类,可以存储和管理任何类型的数据。,分别存储整数、字符串和自定义类型(类来存储任何类型的数组。在Qt中, 可以使用。创建了三个不同类型的。原创 2024-01-10 13:54:38 · 704 阅读 · 0 评论 -
【QT】发生的运行时错误汇总
错误原因:QObject是可重入的,它的大多数非GUI子类,例如QTimer, QTcpSocket, QUdpSocket and QProcess都是可重入的,使得这些类可以同时用于多线程。需要注意的是,这些类设计为从一个单一的线程创建和使用的,在一个线程创建对象,而从另外一个线程调用对象的函数并不能保证行得通。本例中成员变量QTimer是在主线程创建对象时创建的,但是是在run函数中调用,run函数运行在另一个线程中,所以提示错误。这个错误说明程序中有野指针,断点以下很容易找出错误。原创 2024-01-03 17:13:59 · 778 阅读 · 0 评论 -
【QT】return 和 break 是 C++ 中两个不同的关键字,它们在程序中有不同的用途。
【代码】【QT】return 和 break 是 C++ 中两个不同的关键字,它们在程序中有不同的用途。原创 2024-01-03 16:12:21 · 647 阅读 · 0 评论 -
【QT】中常见的信号槽使用错误汇总
/ 正确示例 QObject::connect(sender, SIGNAL(someSignal()), receiver, SLOT(slotInDifferentThread()), Qt::QueuedConnection);// 使用Qt::QueuedConnection来处理跨线程连接。// 未处理跨线程连接。// 错误示例 QObject::connect(button, SIGNAL(clicked()), this, SLOT(showMessage()));原创 2024-01-03 15:47:19 · 702 阅读 · 0 评论 -
【QT】QString类型中,Empty和NULL有什么区别在qt里,对比C#
两者效果是一样的,都会创建一个不包含任何字符的空字符串。在实际使用中,使用默认构造函数更为常见。对象可能是空字符串,即包含零个字符,但它不是一个空指针。在 Qt 中,字符串不是通过指针来表示的,因此不存在与 C# 中的。如果需要检查指针是否为空,可以使用 C++ 中的。方法来检查字符串是否为空,而不是使用。总体而言,要检查字符串是否为空,应使用。在 Qt 的字符串处理中,通常使用。用于检查字符串是否为空。方法来检查字符串是否为空。在 Qt 中,表示一个空的。来确定字符串是否为空。原创 2024-01-03 15:29:10 · 1208 阅读 · 0 评论 -
【QT】线程模型、事件机制、信号槽机制 讲解
信号槽机制是 Qt 中一种用于对象间通信的机制,它通过信号(signal)和槽(slot)的连接实现。这种机制允许一个对象(信号发射者)在特定的情况下发射信号,而另一个对象(槽接收者)则通过连接到这个信号的槽函数来接收并处理这个信号。在 Qt 中,事件是由对象发出的信号,其他对象通过槽函数来处理这些信号。否则,事件将传递给事件接收者的父对象,直至到达顶层父对象或者某个对象明确地处理了该事件。Qt 的事件机制是一种基于事件驱动的编程模型,它用于处理用户输入、定时器事件、系统事件等。类的对象通常是事件接收者。原创 2024-01-02 15:19:00 · 1306 阅读 · 0 评论 -
【QT】qt的智能指针
std::shared_ptr:使用引用计数,每一个shared_ptr的拷贝都指向相同的内存,每次拷贝都会触发引用计数+1,每次生命周期结束析构的时候引用计数-1,在最后一个shared_ptr析构的时候,内存才会释放。std::weak_ptr:用来监视shared_ptr的生命周期,它不管理shared_ptr内部的指针,它的拷贝析构都不会影响引用计数,纯粹是作为一个旁观者监视shared_ptr中管理的资源是否存在,可以用来返回this指针和解决循环引用问题。原创 2023-12-28 14:26:02 · 1496 阅读 · 0 评论 -
【QT】QList<T>list 为例,移动赋值(Move Assignment)和拷贝赋值(Copy Assignment)
移动赋值(Move Assignment)和拷贝赋值(Copy Assignment)是关于对象在赋值操作中如何处理资源所有权的两个不同的概念。原创 2023-12-28 10:52:40 · 1212 阅读 · 0 评论 -
【QT】qt中多线程的使用
目标类继承QThread 覆写虚函数function run()qt中对应的多线程的使用举例。原创 2023-12-26 17:11:01 · 727 阅读 · 0 评论 -
【QT】单例模式,Q_GLOBAL_STATIC 宏的使用和使用静态成员函数,eg:{简单的日志记录器}
简单的日志记录器为例。创建一个Logger类,该类负责记录应用程序的日志消息。原创 2023-12-26 16:44:37 · 864 阅读 · 0 评论 -
【QT】C#中System.Timers.Timer定时触发事件的计时器类,qt与之对应的QTimer类的使用举例
一个桌面应用程序,该应用程序需要定期更新一些数据,以确保用户始终看到最新的信息。原创 2023-12-26 10:14:31 · 565 阅读 · 0 评论 -
【QT】关于Lambda 表达式的引用捕获和值捕获
符号表示通过引用捕获外部作用域中的变量。Lambda 表达式内部对这些变量的修改会影响到外部的实际变量。这是一种可以修改外部变量的捕获方式。= 符号表示通过值捕获外部作用域中的变量。Lambda 表达式内部对这些变量的修改不会影响到外部的实际变量。这是一种只读方式的捕获方式。原创 2023-12-19 16:46:03 · 533 阅读 · 0 评论 -
【C++】C++中类的成员访问修饰符 private 和protect的区别和使用
private: 在类的成员列表中使用 private 关键字表示该成员对外部是不可见的,只有在类的内部可以访问。private 成员对于类的用户(类的外部代码)是隐藏的,只有类的成员函数可以直接访问 private 成员。protected: 在类的成员列表中使用 protected 关键字表示该成员对于类的外部是不可见的,但对于派生类是可见的。protected 成员对于类的用户(类的外部代码)是隐藏的,但可以在派生类中访问。protected 成员对于类的外部是不可见的,但对于派生类是可见的。原创 2023-12-09 11:01:26 · 647 阅读 · 1 评论 -
【QT】基于qtcreator的串口通信,注意事项
问题记录:【QT】基于qtcreator的串口通信,注意事项,往串口发送数据时,在debug下可能存在发送下去,但是没有回信的结果。现象②:在debug模式下,发送十六进制内容,下位机无回应,宕机错觉。现象①:直接运行 有回应。原创 2023-11-22 16:47:51 · 424 阅读 · 1 评论 -
在qt环境下,可执行文件进行打包的过程
以下,将可执行文件进行打包的过程。原创 2023-11-02 14:45:48 · 66 阅读 · 0 评论 -
在qt环境下,可执行文件生成过程
⑤ windeployqt发布,windeployqt 是 Qt 提供的 Windows 平台打包工具,它能自己找到 .exe 可执行文件需要的所有动态链接库,并将它们拷贝到当前文件夹中。⑦ 执行 “windeployqt Seriaxxxxad_v2.2.exe” 命令,换成自己的.exe名字。按以上步骤发布的软件,即使在对方没有qt环境下的生产电脑中也可正常运行。注:生成的文件名可更改,例④ 将生成的exe新建文件夹。③ 构建运行后,在构建目录中找到生成的exe文件。① 电脑有qt运行环境。原创 2023-10-17 16:23:00 · 340 阅读 · 0 评论