Qt
我的Qt学习笔记
巨龙之路
计算机专业学生,主攻C++、Linux、网络编程和Qt。我认为写博客可以给个人、社会和世界带来价值。因为其他人的博客给我带来了帮助,所以我也传承他们的分享精神来写博客。不忘初心,牢记使命,时刻秉持“人人为我,我为人人”的开源精神。
展开
-
在Qt助手(Assistant)中查看Qt5的所有模块
选择“内容”选项卡,列表里面的内容就是Qt5的所有模块。2024年4月23日,周二上午。原创 2024-04-23 09:07:57 · 201 阅读 · 0 评论 -
如何在官网查看Qt5的所有模块?
2024年4月23日,周二上午如果你不想一步步来的话,可以直接去这个Qt官方链接。原创 2024-04-23 09:00:45 · 341 阅读 · 0 评论 -
Qt5中的常用模块
这些模块覆盖了 Qt5 中常用的功能和应用场景,你可以根据项目需求选择合适的模块来构建应用程序。2024年4月23日,周二上午。原创 2024-04-23 08:24:30 · 670 阅读 · 0 评论 -
Qt5之创建数据库连接、打开数据库、查询数据库和获取结果集
2024年4月22日,周一下午注意,下面这段代码不能直接运行,只是给大家一个大概的思路。原创 2024-04-22 15:42:40 · 228 阅读 · 0 评论 -
在Qt creator中使用多光标
键,并用鼠标左键在文本编辑器中选择多个光标位置。你可以选择多个不同的位置,或者选择整个文件中的所有匹配项。然后,你可以在这些光标位置上同时进行编辑,输入相同或不同的文本,或者进行其他编辑操作。多光标模式允许你在同一时间在多个光标位置进行编辑,从而可以更快地进行一些重复性的编辑操作。Qt Creator 支持多光标模式。2024年4月22日,周一下午。要启用多光标模式,请按住。原创 2024-04-22 15:09:04 · 350 阅读 · 0 评论 -
Qt5怎么用QSetting生成配置文件、读取配置文件和保存配置文件
类提供了一个跨平台的接口,用于读取和写入应用程序的设置和配置信息,这些信息可以存储在不同的地方,如注册表(Windows)、INI 文件(Windows)、plist 文件(macOS)、以及 JSON、INI、XML 格式的文件等。对象,并指定了配置文件的路径和格式(这里使用 INI 格式)。方法会使配置文件立即写入磁盘,因此你可以在应用程序退出前调用。如果你需要使用 JSON 或 XML 格式的配置文件,只需要将。方法设置了应用程序的组织名称和应用名称。方法,则在应用程序退出时可能会失去一些配置信息。原创 2024-04-22 14:48:15 · 518 阅读 · 0 评论 -
在QML中怎么判断property string password的password是否为空
中的条件语句会执行相应的操作,例如打印日志或执行其他逻辑。属性来检查字符串的长度是否为 0。在 QML 中,你可以使用条件语句来判断。2024年4月22日,周一下午。原创 2024-04-22 14:35:08 · 235 阅读 · 0 评论 -
在QML中什么是onLazyLoad?
懒加载是一种延迟加载技术,用于在需要时才加载组件或对象,以节省资源和提高性能。例如,假设有一个懒加载的列表视图(ListView),当用户滚动到列表中的某一项时,该项的内容才会被加载并显示。当一个组件或对象被设置为懒加载时,它不会在应用程序启动时立即加载,而是在被访问或需要时才会被加载。信号来监听每一项被加载时的事件,以便在加载完成后执行特定的操作,如更新数据或显示动画效果。在 QML 中通常用于处理懒加载组件或对象的加载事件,以便在需要时执行相关逻辑。2024年4月15日,周一下午。原创 2024-04-15 14:32:42 · 118 阅读 · 0 评论 -
什么是qmlscene?
是一个命令行工具,它是Qt框架的一部分,用于加载和显示QML文件。QML是一种声明性语言,用于构建用户界面,与Qt框架一起使用。支持Qt框架的跨平台特性,意味着开发者可以在不同的操作系统上运行QML文件,包括Windows、macOS和Linux。是一个方便的命令行工具,用于加载、运行和测试QML文件,它是Qt框架生态系统中的一个重要组成部分。:开发者可以快速加载QML文件并看到用户界面的结果,这有助于快速迭代和测试UI设计。,开发者可以通过简单的命令行参数加载和运行QML文件,无需复杂的配置或构建过程。原创 2024-04-08 15:33:57 · 194 阅读 · 0 评论 -
QImage的bytesPerLine函数
如果图像的宽度不是对齐到特定字节数的倍数,那么可能会有额外的字节被添加到每行的末尾,以满足对齐要求。每行的字节数取决于图像的宽度、像素格式以及对齐方式等因素。函数,可以计算出每行像素数据的偏移量,从而在操作图像数据时可以准确地定位每行的起始位置。函数可以用于获取图像每行的字节数,以便在处理或操作图像数据时进行准确的偏移计算。函数返回的是图像每行的字节数,即图像数据在内存中连续存储的一行所占用的字节数。是 Qt 中 QImage 类的成员函数,用于获取图像每行的字节数。2024年3月26日,周二晚上。原创 2024-03-26 18:52:07 · 229 阅读 · 0 评论 -
QImage的constBits()函数
返回的指针指向的是图像数据的首地址,可以通过计算偏移来访问不同位置的像素数据。需要注意的是,图像数据的存储格式可能是按行存储的,因此在访问图像数据时,需要考虑图像的宽度和每行的字节数等信息,以正确地计算偏移量。这个函数通常用于访问图像的像素数据,但是返回的指针是只读的,因此不能通过这个指针来修改图像数据。可以用于获取图像数据的只读指针,方便进行一些只读操作,如像素值的查看或处理,但不能用于修改图像数据。是 Qt 中 QImage 类的成员函数,用于获取图像数据的指针,但是返回的是一个。原创 2024-03-26 18:47:59 · 179 阅读 · 0 评论 -
【Qt5】QVariant
QVariant是 Qt 框架中用于处理各种数据类型的通用类。它可以存储几乎任何类型的数据,并且能够在不同的 Qt 类之间进行类型转换。QVariant在 Qt 中被广泛用于处理不同的数据类型,包括基本数据类型(如整数、浮点数、布尔值等)、字符串、自定义数据类型、以及 Qt 的各种对象类型。QVariant。原创 2024-03-22 13:26:21 · 748 阅读 · 0 评论 -
【Qt5】什么是pri文件
在 Qt 中,.pri 文件是一种用于包含和管理项目中的共享配置和设置的文件。通常,.pri 文件用于在多个项目之间共享配置、编译选项和文件列表等信息,以便于项目的管理和维护。使用 .pri 文件的主要优点是可以将项目配置信息分离出来,使得配置信息可以被多个项目共享,同时也方便了项目的维护和管理。:定义一些函数来处理特定的任务,如设置编译选项、包含特定的头文件等。:定义一些变量来保存配置信息,如编译器选项、库路径等。:列出需要包含或排除的源文件、头文件、资源文件等。2024年3月18日,周一上午。原创 2024-03-18 08:13:55 · 455 阅读 · 0 评论 -
各版本的Qt Creator的下载地址
如果想下载测试中的最新版Qt Creator的快照可以去这个地址。2024年2月3日,周六上午。原创 2024-02-03 10:54:16 · 1083 阅读 · 0 评论 -
【Qt5】QString的成员函数chop
在这个示例中,originalString 包含字符串 "Chop me!通过调用 chop(2) 方法,从字符串的末尾移除了两个字符,修改了原始字符串。在输出中,会看到原始字符串和移除指定数量字符后的字符串的区别。QString 的 chop 方法用于从字符串的末尾移除指定数量的字符。这个方法会修改原始字符串,并返回 void。注意,chop 方法会直接修改原始字符串,因此使用时要小心确保不会超出字符串的长度。2024年1月19日,周五下午。原创 2024-01-19 15:09:24 · 754 阅读 · 0 评论 -
【Qt5】QString的成员函数trimmed
在这个示例中,originalString 包含前后有空格的字符串。通过调用 trimmed 方法,创建了一个去除两端空格的新字符串 trimmedString。在输出中,会看到原始字符串和去除两端空格后的字符串的区别。QString 的 trimmed 方法是用于移除字符串两端的空白字符(空格、制表符、换行符等)的方法。它返回一个新的字符串,该字符串是原始字符串去除两端空白后的结果。这是一个常用的操作,特别是在用户输入或文件读取等场景中,以确保字符串的纯净性。2024年1月19日,周五下午。原创 2024-01-19 15:08:22 · 923 阅读 · 0 评论 -
【Qt5】QString的成员函数arg
2024年1月16日,周二上午。原创 2024-01-16 10:18:41 · 589 阅读 · 0 评论 -
【Qt5】查看QTextCodec::codecForName()函数支持哪些编码名称
2023年12月17日,周日上午。原创 2023-12-17 22:39:46 · 277 阅读 · 0 评论 -
【Qt5】如何用SVG文件来给应用程序设置图标
2023年12月17日,周日晚上原创 2023-12-17 22:28:15 · 274 阅读 · 0 评论 -
用QTextStream和QFile在读取文件上面有什么区别
两者的区别在于文件读取的方式。第一种方式使用了 QTextStream 对象来读取文件内容,可以提供更多的文本处理功能,比如逐行读取、按照特定分隔符读取等。而第二种方式直接使用 QFile 对象的 readAll() 方法,只是简单地将整个文件内容读取为一个字符串。直接使用 QFile 对象的 readAll() 方法来读取文件的内容,并将其设置到 QTextEdit 控件中。将读取到的文件内容设置到 QTextEdit 控件中。这两段代码都是用于将文件的内容读取并设置到一个 QTextEdit 控件中。原创 2023-12-16 09:44:50 · 102 阅读 · 0 评论 -
【Qt5】ui文件最后会变成头文件
在Qt中,ui文件是用于描述用户界面的XML文件,而头文件是用于在代码中使用界面的C++文件。在使用Qt的uic(User Interface Compiler)工具编译ui文件时,会生成对应的头文件。通过将ui文件编译为对应的头文件,可以在代码中方便地使用和操作界面,从而实现界面和逻辑的耦合分离。生成的头文件包含了对应界面的类定义、控件对象的声明和成员变量等信息,以及一些预处理指令和宏定义。可以在代码中包含生成的头文件,并使用其中的类和控件对象来操作和访问界面的各个部分。我也是今天下午偶然间发现这个的。原创 2023-12-14 16:35:41 · 746 阅读 · 0 评论 -
【Qt5】Qt Creator中CMake的qt5_wrap_ui函数
在上述示例中,使用qt5_wrap_ui将src/ui/widget.ui转换为对应的C++头文件,并将生成的头文件存储在UI_HEADERS变量中。qt5_wrap_ui命令将会生成一个包含了每个输入.ui文件所对应的C++头文件的变量。通过使用qt5_wrap_ui,可以在CMake中方便地将Qt的用户界面文件转换为对应的C++头文件,从而在项目中使用这些界面。qt5_wrap_ui是一个CMake的宏命令,用于将Qt的用户界面文件(.ui文件)转换为对应的C++头文件。原创 2023-12-14 16:30:32 · 627 阅读 · 0 评论 -
【Qt5】QDialog的pos函数
需要注意的是,窗口的位置是相对于其父窗口的坐标系的,而不是相对于屏幕的全局坐标系。如果需要获取窗口在屏幕上的位置,可以使用mapToGlobal()函数将窗口的位置转换为全局坐标。窗口的位置是相对于其父窗口的坐标系的。如果QDialog是由另一个窗口创建的子窗口,那么父窗口就是创建它的窗口。它返回一个QPoint对象,表示窗口的左上角在父窗口坐标系中的坐标。可以使用windowPos对象来访问窗口的位置坐标,如windowPos.x()和windowPos.y()。2023年12月14日,周四下午。原创 2023-12-14 14:00:20 · 299 阅读 · 0 评论 -
【Qt5】QMouseEvent的globalPos
全局坐标是相对于整个屏幕的坐标系,而不是相对于应用程序窗口或控件的坐标系。它可以用来确定鼠标事件发生的具体位置,无论鼠标在屏幕上的位置如何。QMouseEvent的globalPos()函数是用于获取鼠标事件发生时的全局坐标。它返回一个QPoint对象,表示鼠标事件的全局位置。可以使用globalPos()函数来获取鼠标事件的全局坐标,并根据这个坐标来执行相应的操作,比如窗口移动、绘制图形或处理其他交互行为。2023年12月14日,周四下午。原创 2023-12-14 13:57:08 · 343 阅读 · 0 评论 -
QMainWindow和QWidget有什么区别
是 Qt 框架中两个不同的类,用于创建用户界面的窗口部件。它们之间的主要区别在于它们的设计和用途。提供了一些特殊的功能,如菜单栏、工具栏、状态栏和中心窗口区域。不提供菜单栏、工具栏等高级界面元素。2023年12月12日,周二上午。原创 2023-12-12 07:51:52 · 550 阅读 · 0 评论 -
在 Qt Creator 中编写 Doxygen 风格的注释
2023年12月10日,周日上午。原创 2023-12-10 10:41:43 · 362 阅读 · 1 评论 -
【Qt5】QVersionNumber
是 Qt 框架中用于表示版本号的类。它提供了一种方便的方式来处理和比较版本号,特别是在应用程序或库需要与特定版本的依赖项进行交互时。以下是一个简单的示例,演示了如何使用。2023年12月10日,周日上午。原创 2023-12-10 08:44:44 · 225 阅读 · 0 评论 -
【Qt5】Q_UNUSED()
有时候,在函数签名中声明了某些参数,但是在函数体内并没有使用它们。这可能是因为在某些情况下,函数可能需要接受一定的参数,但是当前的实现并不需要使用这些参数。为了避免编译器发出未使用变量的警告,可以使用。的作用就是告诉编译器:我们知道这个参数存在,但是在当前函数中并没有使用它,不要产生未使用变量的警告。是一个用于告诉编译器不使用(或者未使用)特定变量的宏。2023年12月9日,周六晚上。宏将其标记为未使用。原创 2023-12-09 20:56:17 · 249 阅读 · 0 评论 -
【Qt5】setWindowFlags的标志有哪些?
组合使用,以实现对窗口的定制。在Qt中,开发者可以根据项目的需求选择适当的窗口类型和标志,以实现所需的窗口外观和行为。2023年12月9日,周六晚上。这些标志可以通过按位或(原创 2023-12-09 20:53:40 · 149 阅读 · 0 评论 -
QGraphicsItem的标志位有哪些
这些标志位允许你以灵活的方式配置图形项的行为,以满足特定的需求和场景。2023年12月8日,周五上午。原创 2023-12-08 09:04:07 · 116 阅读 · 0 评论 -
【Qt】QDialog的成员函数exec()的返回值
2023年12月4日,周一上午。原创 2023-12-04 11:25:35 · 1679 阅读 · 2 评论 -
【Qt5】Qt中的容器有哪些
但在某些情况下具有更高的性能,特别适用于大型数据集。使用哈希表实现的键值对容器,提供快速的查找性能。双向链表容器,支持在序列中快速插入和删除操作。键值对映射的容器,用于存储一对一关系的数据。一种集合容器,用于存储独特的值,不允许重复。通用的动态数组容器,可存储多个元素。队列容器,先进先出 (FIFO)。字节数组容器,用于存储二进制数据。栈容器,后进先出 (LIFO)。字符串列表容器,存储字符串元素。2023年12月1日,周一上午。原创 2023-12-01 08:27:00 · 335 阅读 · 0 评论 -
【Qt5】QList的用法
2023年12月1日,周五上午在 Qt 中,QList 是一个常用的容器类,用于存储元素的动态数组。原创 2023-12-01 08:24:39 · 1197 阅读 · 0 评论 -
【Qt5】什么时候会触发paintEvent事件
当任何导致窗口或部件需要重新绘制的事件发生时,Qt会发送paintEvent给对应的部件,以便程序员可以重写该事件的处理函数来执行所需的绘制操作。需要注意的是,对于特定的部件,例如继承自 QWidget 的自定义部件,可以重写其 paintEvent 函数来自定义绘制逻辑。paintEvent事件是Qt框架中的一个重要事件,它在需要重新绘制部件时被触发。2023年11月29日,周三上午。原创 2023-11-29 09:38:09 · 1369 阅读 · 0 评论 -
Qt5的事件处理函数有哪些?
2023年11月29日,周三上午。原创 2023-11-29 09:06:59 · 164 阅读 · 0 评论 -
QTableWidget常用信号的功能
2023年11月18日,周六上午。原创 2023-11-18 11:21:20 · 1830 阅读 · 0 评论 -
【短文】【踩坑】可以在Qt Designer给QTableWidge添加右键菜单吗?
2023年11月18日,周六上午今天早上在网上找了好久都没找到教怎么在Qt Designer给QTableWidge添加右键菜单的文章。原创 2023-11-18 09:13:08 · 443 阅读 · 0 评论 -
Qt中的tr函数
它可以将文本字符串翻译成不同的语言,并根据当前的语言环境动态地加载相应的翻译文件。当应用程序运行时,Qt会根据当前的语言环境选择相应的翻译文件,并将 "线程" 翻译成对应的语言。这样,当应用程序运行时,Qt会根据当前的语言环境自动选择相应的翻译文件,并将字符串翻译成对应的语言。,那么该字符串将不会被翻译,始终显示为 "线程"。2、为什么要写成setWindowTitle(tr("线程")),我写成setWindowTitle("线程")会怎么样。如果你的应用程序只需要固定的语言,直接使用字符串也是可以的。原创 2023-11-17 08:11:44 · 1025 阅读 · 0 评论 -
在Qt中怎么由函数定义自动创建函数实现模板
2023年11月12日,周日凌晨。原创 2023-11-12 00:10:01 · 335 阅读 · 2 评论 -
【Qt】QCheckBox
QCheckBox是Qt中的一个复选框控件,用于提供用户选择一个或多个选项的功能。它通常用于选择或取消选择一个选项,可以单独使用,也可以与其他控件一起使用。QCheckBox继承自QAbstractButton,因此它具有按钮的行为和外观。它可以显示一个文本标签和一个可选的图标,用于表示选中或取消选中的状态。2023年11月10日,周五下午。原创 2023-11-10 13:25:49 · 221 阅读 · 0 评论