自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (5)
  • 收藏
  • 关注

原创 STM32 F103核心板 刷Arduino 固件

背景:

2020-12-03 15:57:41 4532 2

原创 TDengine 32位版本挖坑

TDengine 32位版本挖坑简介TDengine是涛思数据推出的一款开源的专为物联网、车联网、工业互联网、IT运维等设计和优化的大数据平台。除核心的快10倍以上的时序数据库功能外,还提供缓存、数据订阅、流式计算等功能,最大程度减少研发和运维的复杂度。源码地址:https://github.com/taosdata/TDengine官网地址:https://www.taosdata.co...

2020-04-30 14:41:51 992 1

原创 Qt5.12.4 msvc2015 windows7 静态编译

前言Qt源码编译有很多选项:目标platforms,编译静态库或者动态库,skip(跳过)某个功能模块等选项。本文主要介绍在Windows 7 x64平台下使用visual studio 2015 编译Qt 5.12.4源码的流程。需求1.源码在上面的地址下载安装包。如:方式一:官网下载:[地址]:http://download.qt.io/archive/qt/5.12/5.12.4...

2019-08-14 17:08:47 1761

原创 通俗易懂的ChatGPT的原理简介

ChatGPT的原理虽然涉及复杂的机器学习技术,但其核心思想是通过大规模的数据预训练来学习语言的通用规律,然后通过微调来适应特定的对话场景。这种模型的设计使得ChatGPT能够在多种语言任务中表现出高水平的性能,为用户提供丰富而自然的交互体验。

2024-06-27 15:29:44 993

原创 AudioLM音频生成模型 简介

当在语音上训练时,无需任何转录或注释,AudioLM就能生成语法和语义上合理的语音续集,同时还能保持未见说话者的身份和韵律。谷歌发布的AudioLM模型表明,近年来自然语言处理领域的进步使得语言模型在许多任务中显示出其潜力,包括通过听到音频生成后续音频的能力。AudioLM音频生成模型是一种先进的音频生成技术,它广泛应用于语音合成、音乐生成等领域。总的来说,AudioLM音频生成模型代表了音频生成技术的一个重要进步,尽管它仍面临一些技术和实践上的挑战,但其潜力和应用前景令人期待。

2024-06-27 15:10:09 367

原创 QMouseEvent 详解

是Qt中处理鼠标交互的关键类。通过重写相关的事件处理函数并利用提供的接口,开发者可以实现丰富的鼠标交互功能。

2024-06-27 15:05:36 449

原创 QGraphicsView 坐标系统详解

的坐标系统是Qt图形视图框架中的一个重要概念,它涉及到视口坐标、场景坐标和项坐标这三种不同的坐标系统。

2024-06-26 16:24:32 301

原创 QGraphicsItem 的函数 itemChange 缩放和旋转无信号发出

如果这些日志记录没有显示预期的值,那么可能存在上述提到的问题之一。,并打印了即将变化的值。以下是一个简单的例子,展示了如何在。在这个例子中,我们检查了。

2024-06-22 10:01:47 181

原创 QMetaEnum 使用详解

在使用 QMetaEnum 之前,你需要先定义一个枚举类型,并且确保它是 QObject 的子类的一部分。你可以使用 Q_ENUM 宏来注册你的枚举类型,这样 QMetaEnum 就能够识别并操作它了。Q_OBJECTpublic:在这个例子中,Priority是一个枚举类型,它被注册到了 Qt 的元对象系统中。

2024-06-22 09:37:42 346

原创 比较Zig、Rust和C++

Zig、Rust和C++各有优势和局限,没有一种语言能够在所有方面都做到最好。选择哪种语言取决于具体的项目需求、团队的技术栈、开发效率和性能要求等因素。建议开发者根据自己的实际情况,选择最适合自己的工具。随着技术的发展,这三种语言都有望在未来的软件开发中扮演重要角色12。

2024-06-22 09:23:46 754

原创 QGraphicsItem 自定义是否被选中

在 Qt 的 QGraphicsItem 框架中,如果您想要自定义的图形项能够被选择和交互,需要满足两个条件。这是因为 QGraphicsItem 的选择和交互机制依赖于其形状(shape)和边界矩形(bounding rectangle)来确定鼠标事件是否与其相关。重写方法这个方法应该返回一个 QPainterPath,它紧密地包围了您的自定义图形。这个路径用于精确的碰撞检测和事件处理。如果您的自定义图形比较复杂,生成这个路径可能会有点复杂,但这是确保精确选择和高效事件处理的关键。

2024-06-19 10:51:53 426

原创 QGraphicsView 全详解

视口类型的视口可以是任何类型的QWidget,包括QGLWidget,这使得可以在视口中使用OpenGL进行渲染。视口事件:可以通过重写的函数来处理视口级别的事件,例如触摸事件和多点触控事件。类提供了许多常用的函数、信号和槽,用于管理和操作图形视图。

2024-06-15 18:20:12 2134

原创 QGraphicsItem 详解

是Qt中用于表示2D图形元素的基类,它提供了许多重要的特性和方法,使得开发者能够创建和管理复杂的图形界面。以下是。

2024-06-15 15:35:52 914

原创 QBrush 详解

是Qt框架中的一个类,它用于定义图形的填充模式。可以用于填充图形项(如)的形状,也可以用于绘制背景等。

2024-06-15 12:25:21 223

原创 QGraphicsRotation 详解

是Qt框架中的一个类,它用于表示图形项()的旋转变换。它是的一个子类,可以用来围绕一个指定的点旋转图形项。

2024-06-15 12:13:41 363

原创 QGraphicsSceneWheelEvent 详解

是 Qt 图形视图框架中的一个类,它提供了与滚轮事件相关的信息和功能。当用户在 QGraphicsView 中滚动鼠标滚轮时,会生成一个,该事件会被转换成并传递给 QGraphicsScene。这样,你就可以在 QGraphicsScene 的子类中重写方法来处理这些滚轮事件。以下是。

2024-06-15 09:36:52 420

原创 QGraphicsItemGroup 使用教程

QGraphicsItemGroup是Qt框架中的一个类,它允许开发者将多个QGraphicsItem对象组合成一个单一的项。这种组合可以简化对这些项的操作,例如一起移动、旋转或缩放它们。QGraphicsItemGroup非常适合于那些需要将多个图形元素视为一个整体进行管理的场景,比如在绘图应用程序或游戏开发中。

2024-06-14 17:00:28 516

原创 QStateMachine 笔记

是 Qt 框架中用于实现状态机的类。状态机是一种模型,它由一系列状态组成,每个状态对应于系统的一个特定行为模式。状态机可以根据外部事件或内部条件在不同的状态之间转换。

2024-06-12 15:50:29 438

原创 Eigen 详解

Eigen是一个轻量级的C++模板库,专注于线性代数领域,提供了广泛的矩阵和向量运算功能。// 定义一个2x2的浮点矩阵Matrix2f A;// 定义一个2维列向量// 输出矩阵和向量return 0;

2024-06-12 15:49:32 482

原创 Qt Graphics View Framework 使用教程

通过本教程,您应该已经了解了 Qt Graphics View Framework 的基本概念和使用方法。这是一个非常强大的工具,可以帮助您创建出色的 2D 图形界面。继续探索和实践,您将能够充分利用它的全部功能!

2024-06-07 22:17:22 708

原创 QGraphicsWidget与QWidget的主要区别是什么?

和。

2024-06-07 22:06:15 573

原创 Qt Graphics View Framework 简介

作为容器,管理所有的。作为视图,展示的内容。是的子类,提供更复杂的用户界面功能。是所有图形项的基础,可以是简单的图形也可以是复杂的。通过这些类的组合使用,开发者可以创建复杂的 2D 图形界面,实现各种交互和视觉效果。

2024-06-07 21:53:28 1217

原创 QTransform 笔记

QTransform是 Qt 中用于处理二维图形变换的一个类,它提供了一系列的方法来平移、旋转、缩放和剪切图形。以下是QTransform。

2024-06-05 09:19:14 225

原创 QTransform 简介

QTransform是Qt图形框架中的一个重要类,它用于执行二维图形的几何变换,如平移、缩放、旋转等。通过QTransform,开发者可以轻松地改变图形元素的形状、大小和位置,从而满足复杂的图形绘制和动画需求。

2024-06-05 09:17:39 349

原创 QPainter::end: Painter ended with 2 saved states 如何解决

QPainter::end: Painter ended with 2 saved states 是一个警告信息,它表明 QPainter 对象在结束时还存在未恢复的状态栈。这通常发生在 QPainter 对象被销毁(即调用其析构函数)时,如果存在未通过 restore() 方法平衡掉的 save() 调用。这意味着,每当你保存了 QPainter 的状态后,必须在结束绘制之前恢复它。通过这种方法,你可以确保每次进入绘制函数时状态都被保存,而在函数结束时状态会自动恢复,无论函数中间发生了什么。

2024-06-03 10:09:04 540 1

原创 QImage和QPixmap的区别和使用

在这个例子中,我们创建了一个简单的Qt应用程序窗口,并使用QLabel来显示一个由QPixmap加载的图像。这种方法非常适合于在GUI应用程序中展示图像,因为QPixmap是专门为高效显示而设计的。在这个例子中,我们加载了一个彩色图像,然后创建了一个新的灰度图像。通过遍历原始图像的每个像素,并将其转换为灰度值,我们生成了一个新的灰度图像,并将其保存。假设我们正在开发一个图形用户界面应用,其中需要在窗口中显示一个图像。这两个示例分别展示了QImage在图像处理方面的用途和QPixmap在图像显示方面的用途。

2024-06-01 10:40:28 873

原创 QMatrix详解

在这个示例中,我们首先创建了一个QMatrix对象,并使用translate()和rotate()方法对其进行变换。然后,我们通过QPainter的setMatrix()方法将变换矩阵应用到画笔上,最后使用画笔绘制一个矩形。这个矩形将会根据我们设置的变换矩阵进行相应的平移和旋转变换。QMatrix是Qt框架中的一个类,它表示一个2x3的变换矩阵,通常用于进行二维图形的几何变换。这个类允许你对图形进行平移、缩放、旋转和剪切等操作。QMatrix的主要功能是提供一个便捷的方式来对二维图形进行线性变换。

2024-06-01 10:14:18 433

原创 QFuture 使用笔记

当任务完成时,QFutureWatcher会发射finished信号,这个信号被连接到handleFinished槽函数上,从而处理任务的结果。当你启动一个耗时的操作,如文件读取、网络请求或复杂的计算任务时,你不希望这些操作阻塞主线程,从而影响用户界面的响应性。对于QFuture和相关的QFutureWatcher类,这种机制尤为重要,因为它允许你在异步任务的不同阶段执行特定的操作。下面是一个简单的示例,展示了如何使用QFuture和信号槽机制来异步执行一个函数,并在任务完成时更新UI。

2024-05-29 11:42:58 459

原创 类中使用QtConcurrent::run

在这个例子中,我们创建了一个MyClass的实例myObject,并使用std::bind将myMemberFunction成员函数和myObject实例绑定在一起。std::placeholders::_1表示成员函数的第一个参数,它将在QtConcurrent::run调用时传递。这种方法通常更简洁,特别是当你需要捕获多个变量或执行额外的逻辑时。为了在QtConcurrent::run中调用类的成员函数,你通常需要使用std::bind或Lambda表达式来绑定对象实例和成员函数。

2024-05-29 11:42:13 396

原创 Stable Diffusion教程

本教程将引导你了解Stable Diffusion的基本概念、原理、应用场景,并提供详细的实现步骤和代码示例。在图像生成方面,Stable Diffusion通过大量训练数据学习图像的潜在表示,并能够在潜在空间中高效地探索以生成新的、高质量的图像。这种方法的关键在于使用一个稳定的、条件性的扩散模型,该模型可以根据给定的条件(如文本描述、类别标签等)生成相应的图像。与传统的生成对抗网络(GANs)或变分自编码器(VAEs)不同,扩散模型通过模拟一个扩散(即,添加噪声)和反向扩散(即,去噪)的过程来生成数据。

2024-05-29 09:07:54 831

原创 Qt lambda 表达式

在 Qt 中,lambda 表达式经常用于定义槽函数,特别是在需要快速响应信号而无需编写单独的成员函数时。Lambda 表达式在 C++11 中被引入,它允许你定义一个匿名函数(即没有名字的函数)并直接在代码中捕获和使用它。当按钮被点击时,lambda 表达式中的代码将被执行,输出一条消息到调试控制台。总之,lambda 表达式在 Qt 中为信号和槽的连接提供了一种灵活且强大的方式,使得你可以在不定义额外成员函数的情况下快速响应信号。

2024-05-29 09:02:53 575

原创 Qt信号和槽机制

信号和槽机制的原理是Qt框架中实现对象间通信的一种有效方式。

2024-05-29 09:02:15 466

原创 Qt线程与并发中创建线程的四种方法

在Qt中实现线程与并发,主要有四种创建线程的方法:1.继承QThread类并重写run方法,3.QThreadPool和QRunnable4.继承QObject,moveToThread (最常用)。下面我会详细解释每种方法,并提供相应的示例代码。

2024-05-28 18:35:33 746

原创 元对象系统

元对象系统的实现主要依赖于Qt的元对象编译器(moc)。这些编译生成的源文件通常会被包含到类的源文件中或者与类的实现同时被编译和链接。元对象系统是一个基于Qt框架的核心机制,它提供了运行时类型信息(RTTI)以及信号与槽(Signals and Slots)机制的支持。这个系统使得Qt能够实现许多强大的功能,如信号与槽的自动连接、QObject树结构的管理等。综上所述,元对象系统是Qt框架中一个非常重要的组成部分,它提供了丰富的功能和强大的灵活性,使得Qt成为了一个广泛使用的跨平台应用程序开发框架。

2024-05-27 17:20:54 306

原创 QT设置QTabWidget中的tabBar选项卡宽度自适应

想要设置QTabWidget中的选项卡根据窗口大小进行自适应宽度设置,但是QT没有自带这个函数。在查了网上的一下教程后,看到基本上都是先获取窗口的宽度和选项卡的数量,再用宽度除以数量进行选项卡的自适应。我在使用这个方法后,发现这个方法不太好用,会让选项卡的边框出现一些bug。于是和同学找到了另外一种简单方法。通过获取窗口的宽度,再将选项卡的最小宽度设置为窗口的宽度,就可以实现选项卡的自适应。QT设置QTabWidget中的tabBar选项卡宽度自适应。

2024-05-27 17:20:19 340

原创 QMetaObject::invokeMethod 简介

还需要注意的是,为了使用Qt的信号和槽机制,以及QMetaObject::invokeMethod,你需要在类定义的开始处添加Q_OBJECT宏。这个宏为类添加了一些必要的元信息,以便Qt的元对象系统能够正确地识别和处理它。在Qt框架中,QMetaObject::invokeMethod属于元对象系统的一部分,该系统为Qt提供了强大的内省和动态属性系统。QMetaObject::invokeMethod是Qt框架中的一个功能强大的方法,它允许你以异步的方式调用QObject派生类的成员函数。

2024-05-27 17:19:35 469

原创 详解 QtAndroid::requestPermissionsSync

在这个示例中,我们首先创建了一个包含所需权限的字符串列表,然后使用 QtAndroid::requestPermissionsSync 函数同步请求这些权限。根据用户的响应,我们可以决定是继续执行需要权限的操作,还是处理权限被拒绝的情况。然而,QtAndroid::requestPermissionsSync 提供了一个简单的同步解决方案,特别适用于某些需要立即获取权限的场景。最后,由于 Qt 和 Android 平台的不断更新,建议查阅最新的 Qt 文档以获取最准确和最新的信息。

2024-05-27 17:17:20 473

原创 wxwidget和qt开发的区别和共同点

wxWidgets和Qt都是流行的跨平台GUI开发框架,它们都支持多进程开发,但实现方式和特性有所不同。下面将详细解释wxWidgets和Qt在多进程开发方面的区别和共同点,并为新手提供一些使用建议。

2024-05-27 17:15:42 764

原创 Qt多进程-共享内存(Shared Memory)

【代码】Qt多进程-共享内存(Shared Memory)

2024-05-27 17:14:41 690

原创 进程间通信IPC机制

进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。IPC机制有多种方式,每种方式都有其特定的工作原理、应用场景以及优缺点。总的来说,进程间通信的IPC机制有多种方式,每种方式都有其特定的应用场景和优缺点。在实际应用中,需要根据具体需求和场景来选择合适的IPC方式。

2024-05-27 17:13:35 336

TDengine 32位版,源码亲测可用,

软件开源版本的是64位的,结果我想在家里32位吃土机上用。花了点时间看了看 代码 发现,其实他对64位的依赖并不大,自己动手搞一个32位的 岂不完美。 详细链接 https://blog.csdn.net/github_37290846/article/details/105856481

2020-12-03

en.flasher-stm32.zip

下载时间:2020年12月3日14:55:49 安装ST官方的Flasher工具,可使用该工具来刷新二进制文件:https : //www.st.com/en/development-tools/flasher-stm32.html

2020-12-03

Arduino_STM32-master.zip

下载时间:2020年12月3日14:55:49 Arduino IDE编译STM32硬件IDE配置文件;适合网络不好无法下载的。自行下载地址:https://github.com/rogerclarkmelbourne/Arduino_STM32

2020-12-03

STM32duino-bootloader

stm32 F103 刷 arduino 固件,下载时间:2020年12月3日14:55:49 STM32duino固件,适合网络不好无法下载的。自行下载地址:https://github.com/rogerclarkmelbourne/STM32duino-bootloader

2020-12-03

gettext msve2015(工程文件) qt pri工程文件

gettext; msve2015(工程文件,可直接编译); qt pri工程文件

2018-05-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除