当前位置: 首页 > news >正文

使用Qt创建悬浮窗口

在Qt中创建悬浮窗口(如无边框、可拖动的浮动面板或提示框)可以通过以下方法实现。以下是几种常见场景的解决方案:


方法1:使用无边框窗口 + 鼠标事件拖动

适用于自定义浮动工具窗口(如Photoshop的工具栏)。

#include <QWidget>
#include <QMouseEvent>class FloatingWindow : public QWidget {
public:FloatingWindow(QWidget *parent = nullptr) : QWidget(parent) {// 设置窗口无边框setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);// 设置半透明背景(可选)setAttribute(Qt::WA_TranslucentBackground);// 设置窗口尺寸resize(200, 150);// 添加内容(示例:添加一个标签)QLabel *label = new QLabel("悬浮窗口内容", this);label->setAlignment(Qt::AlignCenter);}protected:// 实现鼠标拖动窗口void mousePressEvent(QMouseEvent *event) override {if (event->button() == Qt::LeftButton) {m_dragPosition = event->globalPos() - frameGeometry().topLeft();event->accept();}}void mouseMoveEvent(QMouseEvent *event) override {if (event->buttons() & Qt::LeftButton) {move(event->globalPos() - m_dragPosition);event->accept();}}private:QPoint m_dragPosition;
};// 使用示例
int main(int argc, char *argv[]) {QApplication a(argc, argv);FloatingWindow window;window.show();return a.exec();
}

方法2:自定义ToolTip样式

当需要美化默认的悬浮提示时,可通过样式表或自定义QToolTip

通过样式表修改默认ToolTip
// 全局设置ToolTip样式
qApp->setStyleSheet("QToolTip {""   background: #FFFFCC;""   color: #333333;""   border: 1px solid #FFAA00;""   border-radius: 3px;""   padding: 2px;""}"
);// 为某个控件设置ToolTip
QPushButton *button = new QPushButton("Hover Me");
button->setToolTip("这是自定义样式的提示!");
创建自定义提示窗口

若需要更复杂的内容(如图片、按钮),可继承QWidget实现:

class CustomToolTip : public QWidget {
public:CustomToolTip(QWidget *parent = nullptr) : QWidget(parent) {setWindowFlags(Qt::ToolTip | Qt::FramelessWindowHint);setAttribute(Qt::WA_TranslucentBackground);QLabel *label = new QLabel("自定义提示内容", this);QVBoxLayout *layout = new QVBoxLayout(this);layout->addWidget(label);}
};// 在需要显示的地方触发
void showCustomToolTip(QWidget *target) {CustomToolTip *tip = new CustomToolTip(target);tip->move(target->mapToGlobal(QPoint(0, target->height())));tip->show();
}

方法3:结合事件过滤器实现悬停显示

当鼠标悬停在某个控件上时显示自定义悬浮窗口。

#include <QEvent>class HoverWidget : public QWidget {
public:HoverWidget(QWidget *parent = nullptr) : QWidget(parent) {setWindowFlags(Qt::ToolTip | Qt::FramelessWindowHint);hide(); // 初始隐藏}
};// 在父控件中安装事件过滤器
class MainWindow : public QWidget {
public:MainWindow() {QPushButton *button = new QPushButton("悬停显示窗口", this);m_hoverWidget = new HoverWidget(this);m_hoverWidget->resize(100, 50);// 安装事件过滤器到按钮button->installEventFilter(this);}protected:bool eventFilter(QObject *obj, QEvent *event) override {if (obj == sender()) { // 假设sender是目标按钮if (event->type() == QEvent::Enter) {// 显示悬浮窗口QPoint pos = mapToGlobal(sender()->pos());m_hoverWidget->move(pos.x(), pos.y() + 30);m_hoverWidget->show();} else if (event->type() == QEvent::Leave) {m_hoverWidget->hide();}}return QWidget::eventFilter(obj, event);}private:HoverWidget *m_hoverWidget;
};

关键配置说明

  1. 窗口标志(Window Flags)

    • Qt::FramelessWindowHint:隐藏标题栏和边框。
    • Qt::WindowStaysOnTopHint:窗口始终置顶。
    • Qt::ToolTip:短暂显示的提示窗口(无任务栏图标)。
  2. 透明背景

    setAttribute(Qt::WA_TranslucentBackground); // 允许透明
    
  3. 阴影效果

    // 通过样式表添加阴影
    setStyleSheet("QWidget {""   background: white;""   border: 1px solid #CCCCCC;""   border-radius: 4px;""}""QWidget::shadow {""   qproperty-shadow: 5px 5px 5px rgba(0,0,0,30);""}"
    );
    

注意事项

  • 内存管理:若悬浮窗口是临时创建的,需确保及时释放(例如通过Qt::ToolTip标志或设置父对象)。
  • 性能优化:频繁创建/销毁窗口可能影响性能,建议复用窗口实例。
  • 平台兼容性:某些标志(如透明背景)在某些平台上可能不生效。

通过上述方法,可灵活实现不同风格的悬浮窗口,满足工具提示、浮动面板等交互需求。

相关文章:

使用Qt创建悬浮窗口

在Qt中创建悬浮窗口&#xff08;如无边框、可拖动的浮动面板或提示框&#xff09;可以通过以下方法实现。以下是几种常见场景的解决方案&#xff1a; 方法1&#xff1a;使用无边框窗口 鼠标事件拖动 适用于自定义浮动工具窗口&#xff08;如Photoshop的工具栏&#xff09;。 …...

C/C++都有哪些开源的Web框架?

CppCMS CppCMS是一个采用C语言开发的高性能Web框架&#xff0c;通过模版元编程方式实现了在编译期检查RESTful路由系统&#xff0c;支持传统的MVC模式和多种语言混合开发模式。 CppCMS最厉害的功能是WebSocket&#xff0c;10万连接在内存中长期保存占用的大小不超过600MB&…...

Unity基于C#+UGUI解决方案,制作每日签到系统(本地存储签到数据)

一、需求介绍:基于本地存储系统制作一个每日签到系统界面,相关签到界面如下图所示,点击“签到有礼”按钮后就会跳转到“每日登录礼”这个界面,点击“立即签到”按钮之后,按钮就会置灰,而且按钮的文字会变成“等待明日”。 二、制作界面显示相关功能,需要在Unity中新建一…...

VBA+FreePic2Pdf 找出没有放入PDF组合的单个PDF工艺文件

设计部门针对某个项目做了一个工艺汇总报告&#xff0c;原先只要几十个工艺文件&#xff0c;组合成一个PDF&#xff0c;但后来要求要多放点PDF进去&#xff0c;但工艺文件都混在一起又不知道哪些是重复的&#xff0c;找上我让我帮忙处理一下&#xff0c;我开始建议让她重新再组…...

工程化与框架系列(31)--前端依赖管理实践

前端依赖管理实践 &#x1f4e6; 引言 前端依赖管理是现代Web开发中的重要环节。本文将深入探讨前端依赖管理的最佳实践&#xff0c;包括包管理工具、版本控制、依赖分析和优化等方面&#xff0c;帮助开发者更好地管理项目依赖。 依赖管理概述 前端依赖管理主要包括以下方面…...

【vscode-01】vscode不同项目不同语言扩展插件隔离方案

vscode不同项目不同语言扩展插件隔离方案 1. 背景2. vscode 扩展插件隔离方案2.1 code-profile 配置文件2.2 配合extensions.json 1. 背景 最近打开vscode 发现越来越卡&#xff0c;这是一个轻量级代码编辑器&#xff0c;怎么会如此占用内存呢&#xff1f; 我使用了‘code --l…...

17 | 实现简洁架构的 Biz 层

提示&#xff1a; 所有体系课见专栏&#xff1a;Go 项目开发极速入门实战课&#xff1b;欢迎加入 云原生 AI 实战 星球&#xff0c;12 高质量体系课、20 高质量实战项目助你在 AI 时代建立技术竞争力&#xff08;聚焦于 Go、云原生、AI Infra&#xff09;&#xff1b;本节课最终…...

DNS解析错误要怎么处理

在互联网时代&#xff0c;网络已经成为人们生活和工作中不可或缺的一部分。然而&#xff0c;当遇到DNS 解析错误时&#xff0c;原本畅通无阻的网络访问会突然陷入困境&#xff0c;让人感到十分困扰。DNS&#xff0c;即域名系统&#xff0c;它如同互联网的电话簿&#xff0c;将人…...

【Rust基础】Rust后端开发常用库

使用Rust有一段时间了&#xff0c;期间尝试过使用Rust做后端开发、命令行工具开发&#xff0c;以及做端侧模型部署&#xff0c;也尝试过交叉编译、FFI调用等&#xff0c;也算是基本入门了。在用Rust做后端接口开发时&#xff0c;常常会找不到一些合适库&#xff0c;而这些库在J…...

【附JS、Python、C++题解】Leetcode面试150题(9)——三数之和

一、题目​​​​​ 15. 三数之和 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足&#xff1a; i!j、i!k 且 j! k &#xff0c;同时还满足&#xff1a;nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 注意…...

脑电波控制设备:基于典型相关分析(CCA)的脑机接口频率精准解码方法

文章目录 前言一、CCA的用途二、频率求解思路三、输入数据结构四、判断方法五、matlab实践1.数据集获取及处理2.matlab代码3.运行及结果 六、参考文献 前言 在脑机接口(BCI)领域&#xff0c;有SSVEP方向&#xff0c;中文叫做稳态视觉诱发电位&#xff0c;当人观看闪烁的视觉刺激…...

Golang学习笔记_44——命令模式

Golang学习笔记_41——观察者模式 Golang学习笔记_42——迭代器模式 Golang学习笔记_43——责任链模式 文章目录 一、核心概念1. 定义2. 解决的问题3. 核心角色4. 类图 二、特点分析三、适用场景1. 事务管理系统2. 多媒体遥控器3. 操作审计系统 四、Go语言实现示例五、高级应用…...

vue项目如何实现条件查询?

目录 1.前端 2.后端 3.mybatis的sql语句 结语 1.前端 说白了就是&#xff0c;无论该参数是否是空字符串&#xff0c;都会传递到后端。&#xff08;反正不是null就行&#xff09;。 2.后端 在controller层中&#xff0c;使用RequestParam注解接收名为registerName的参数&…...

windows平台的ffmpeg编译使用

windows平台的ffmpeg编译使用 一、现状 本人使用libgdx开发galGame,发现扩展包gdx-video不支持mp4,不能忍,正好看到官网有支持自定义编译的文档,所以操作一下,自定义编译。本文重点在于操作windows平台,linux平台太简单了。 整个过程包括如下几个步骤。 二、代码下载…...

Android 14 昼夜色切换多屏时候非主屏的Activity无法收到onConfigurationChanged

记录一下遇见的这个问题和查看源码的过程 首先先说遇见的问题 Android 14 昼夜色切换多屏时候 非主屏的Activity 会经常收不到 onConfigurationChanged的回调 分析原因源码中ActivityThread::performActivityConfigurationChanged 里面 private Configuration performActivi…...

NLP常见任务专题介绍(4)-ConditionalGeneration和CasualLM区别

在 transformers 库中,ConditionalGeneration 和 CausalLM 是两种不同类型的语言模型,各自适用于不同的任务: 类别Conditional Generation (条件生成)CausalLM (因果语言模型)核心区别依赖输入 条件 生成文本只能 自回归 生成文本训练方式Encoder-Decoder(编码-解码) 结构…...

【vue+excel】导出excel(目前是可以导出两个sheet)

项目里经常用到的导出ecxel功能是默认导出一个sheet页 现在需要导出两个sheet&#xff0c;一个是总计&#xff0c;另一个是明细 效果如下&#xff1a; 我就在现有的单个导出的功能上改造了一下&#xff0c;只支持导出两个&#xff08;代码不够灵活&#xff0c;如果需要多个&…...

【数据结构】6栈

0 章节 3&#xff0e;1到3&#xff0e;3小节。 认知与理解栈结构&#xff1b; 列举栈的操作特点。 理解并列举栈的应用案例。 重点 栈的特点与实现&#xff1b; 难点 栈的灵活实现与应用 作业或思考题 完成学习测试&#xff12;&#xff0c;&#xff1f; 内容达成以下标准(考核…...

【C++】每日一练(有效的括号)

本篇博客给大家带来的是用C语言来解答有效的括号&#xff01; &#x1f41f;&#x1f41f;文章专栏&#xff1a;每日一练 &#x1f680;&#x1f680;若有问题评论区下讨论&#xff0c;我会及时回答 ❤❤欢迎大家点赞、收藏、分享&#xff01; 今日思想&#xff1a;不服输的少年…...

数字化新零售与 AI 大模型,如何重塑大健康赛道?​

在数字化浪潮中&#xff0c;大健康赛道正经历深刻变革。数字化新零售营销模式的兴起&#xff0c;与 AI 大模型的强大能力相结合&#xff0c;为大健康领域带来了全新的发展机遇。 数字化新零售营销模式融合线上线下&#xff0c;运用大数据、云计算分析消费者行为&#xff0c;实…...

Android实现Socket通信

问题&#xff1a; 我在Android端对接后端Socket服务实现消息模块的时候&#xff0c;使用WebSocketClient 库&#xff0c;手动构造了订阅和发送消息的 STOMP 帧&#xff0c;&#xff0c;Socket连接成功建立&#xff0c;但是当用户发送消息的时候&#xff0c;对方无法接受到。 …...

✅ Vue 3 响应式写法小抄表(Composition API 实战模板)

&#x1f4e6; 引入核心响应式工具 import { ref, reactive, computed, watch, toRefs } from vue1️⃣ 基本类型&#xff08;string / number / boolean&#xff09; → 推荐使用 ref() const username ref() const count ref(0) const isLoading ref(false)2️⃣ 对象/表…...

Python数据分析之数据可视化

Python 数据分析重点知识点 本系列不同其他的知识点讲解&#xff0c;力求通过例子让新同学学习用法&#xff0c;帮助老同学快速回忆知识点 可视化系列&#xff1a; Python基础数据分析工具数据处理与分析数据可视化机器学习基础 四、数据可视化 图表类型与选择 根据数据特…...

TCP协议支持全双工原因TCP发送接收数据是生产者消费者模型

一、TCP支持全双工的原因 TCP协议支持全双工&#xff0c;即使用TCP协议进行通信时&#xff0c;服务端和客户端可以同时进行数据的发送和接收&#xff0c;互不干扰&#xff0c;实现同时双向传输数据。 这是因为使用TCP协议通信时&#xff0c;读写套接字的文件描述符既用来发送…...

【ODHead】BEVDet的 CenterHead的推理和拓展到蒸馏损失的算法细节

文章目录 背景常识1、BEVDet的CenterHead整体方案2、蒸馏部分3、输出 preds_dicts 部分3.1、headmap3.2、bbox3.3、Mask掩膜3.4、损失 背景常识 在BEVDet和BEVFormer里&#xff0c;使用了不同的3D detection head&#xff08;BEVDet用了centerhead&#xff0c;BEVFormer用了de…...

在 CentOS 7 上安装 PHP 7.3

在 CentOS 7 上安装 PHP 7.3 可以按照以下步骤进行操作&#xff1a; 1. 安装必要的依赖和 EPEL 仓库 EPEL&#xff08;Extra Packages for Enterprise Linux&#xff09;是为企业级 Linux 提供额外软件包的仓库&#xff0c;yum-utils 用于管理 yum 仓库。 sudo yum install -…...

vue+dhtmlx-gantt 实现甘特图-快速入门【甘特图】

文章目录 一、前言二、使用说明2.1 引入依赖2.2 引入组件2.3 引入dhtmlx-gantt2.4 甘特图数据配置2.5 初始化配置 三、代码示例3.1 Vue2完整示例3.2 Vue3 完整示例 四、效果图 一、前言 dhtmlxGantt 是一款功能强大的甘特图组件&#xff0c;支持 Vue 3 集成。它提供了丰富的功…...

关于ModbusTCP/RTU协议对接Ethernet/IP(CIP)协议的方案

IGT-DSER智能网关模块支持西门子、倍福(BECKHOFF)、罗克韦尔AB&#xff0c;以及三菱、欧姆龙等各种品牌的PLC之间通讯&#xff0c;支持Ethernet/IP(CIP)、Profinet(S7)&#xff0c;以及FINS、MC等工业自动化常用协议&#xff0c;同时也支持PLC与Modbus协议的工业机器人、智能仪…...

python-leetcode 49.二叉树中的最大路径和

题目&#xff1a; 二叉树中的路径被定义为一条节点序列&#xff0c;序列中每对相邻节点之间都存在一条边&#xff0c;同一个节点在一条路径序列中至多出现一次&#xff0c;该路径至少包含一个节点&#xff0c;且不一定经过根节点。 路径和是路径中各节点值得总和&#xff0c;…...

C语言基础知识04

指针 指针概念 指针保存地址&#xff0c;地址是字节的编号 指针类型和保存的地址类型要一直 使用时注意&#xff0c;把地址转换为&变量的格式来看 int a[3]; a转为&a[0] 指针的大小 64bit 固定8字节&#xff0c; 32bit 固定4字节 指针…...

使用 Golang 操作 MySQL

在Go语言中&#xff0c;操作SQL数据库&#xff0c;通常会用到一些第三方库来简化数据库的连接、查询和操作过程。其中原生的 database/sql go-sql-driver/mysql 库更符合sql语句使用习惯。‌ 安装 go get github.com/go-sql-driver/mysql 直接上代码来演示基本的创建&#xff…...

前端面试:cookie 可以实现不同域共享吗?

在前端开发中&#xff0c;Cookie 不能直接实现不同域之间的共享。Cookie 的作用域受到域的限制&#xff0c;浏览器不会允许一个域下的 Cookie 被另一个域访问。这是为了保护用户隐私及安全&#xff0c;防止跨站请求伪造&#xff08;CSRF&#xff09;等安全问题。 Cookie 的基本…...

MyBatis-Plus接入和简单使用

如何接入 https://baomidou.com/getting-started/ 简单使用方法 使用 MyBatis-Plus 时&#xff0c;大多数场景下不需要编写 XML 和 SQL&#xff0c;因为它提供了强大的通用 CRUD 操作和条件构造器。但以下情况可能需要手动编写 SQL&#xff1a; 1. 不需要写 XML/SQL 的场景 …...

【Go万字洗髓经】Golang内存模型与内存分配管理

本文目录 1. 操作系统中的虚拟内存分页与进程管理虚拟内存与内存隔离 2. Golang中的内存模型内存分配流程内存单元mspan线程缓存mcache中心缓存mcentral全局堆缓存mheapheapArena空闲页索引pageAlloc 3. Go对象分配mallocgc函数tiny对象分配内存 4.结合GMP模型来看内存模型tiny…...

mov格式视频如何转换mp4?

mov格式视频如何转换mp4&#xff1f;在日常的视频处理中&#xff0c;经常需要将MOV格式的视频转换为MP4格式&#xff0c;以兼容更多的播放设备和平台。下面给大家分享如何将MOV视频转换为MP4&#xff0c;4款视频格式转换工具分享。 一、牛学长转码大师 牛学长转码大师是一款功…...

鸿蒙OS开发ForEach循环渲染

摘要 在ForEach循环渲染过程中&#xff0c;如果修改列表项中的数据&#xff0c;但是UI页面不会刷新。在最近开发公司app时遇到了这个问题&#xff0c;经过查看官方文档找到了解决方式 官方地址&#xff1a;数据变化不刷新 一、具体解决方案 思路&#xff1a;通过父子组件传…...

【算法】DFS、BFS、拓扑排序

⭐️个人主页&#xff1a;小羊 ⭐️所属专栏&#xff1a;算法 很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~ 目录 持续更新中...1、DFS2、BFSN 叉树的层序遍历二叉树的锯齿形层序遍历二叉树最大宽度 3、多源BFS腐烂的苹果 4、拓扑排序 持续更新中…...

【Godot4.0】贝塞尔曲线在游戏中的实际应用

概述 之前研究贝塞尔曲线绘制&#xff0c;完全是以绘图函数&#xff0c;以及实现节点连接为思考。并没有实际考虑贝塞尔曲线在游戏中的应用。今日偶然看到悦千简一年多前发的一个用贝塞尔曲线实现追踪弹或箭矢效果&#xff0c;还有玩物不丧志的老李杀戮尖塔系列中的卡牌动态箭…...

MongoDB 数据导出与导入实战指南(附完整命令)

1. 场景说明 在 MongoDB 运维中&#xff0c;数据备份与恢复是核心操作。本文使用 mongodump 和 mongorestore 工具&#xff0c;演示如何通过命令行导出和导入数据&#xff0c;解决副本集连接、路径指定等关键问题。 2. 数据导出&#xff08;mongodump&#xff09; 2.1 导出命…...

『Rust』Rust运行环境搭建

文章目录 rust编译工具rustupVisual Studio VS Code测试编译手动编译VSCode编译配置 参考完 rust编译工具rustup https://www.rust-lang.org/zh-CN/tools/install 换源 RUSTUP_DIST_SERVER https://rsproxy.cn RUSTUP_UPDATE_ROOT https://rsproxy.cn修改rustup和cargo的安…...

CPU+GPU结合的主板设计思路与应用探讨

在高性能计算和图形处理需求不断增长的背景下&#xff0c;CPUGPU结合的主板设计逐渐成为硬件架构的重要趋势。本文将探讨基于CPUGPU架构的主板设计思路、关键技术考量以及应用前景。 1. 设计思路概述 CPU&#xff08;中央处理器&#xff09;擅长处理复杂的逻辑运算和多任务控制…...

latex问题汇总

latex问题汇总 环境问题1 环境 texlive2024 TeXstudio 4.8.6 (git 4.8.6) 问题1 编译过程有如下错 ! Misplaced alignment tab character &. l.173 International Conference on Infrared &Millimeter Waves, 2004: 667--... I cant figure out why you would wa…...

学习springboot-Bean管理(Bean 注册,Bean 扫描)

Bean 扫描 可以浏览下面的博客链接 &#xff1a;spring 学习 &#xff08;注解&#xff09;-CSDN博客 在学习spring 注解时&#xff0c;我们使用 Component &#xff0c;Service,Controller等 这样的注解&#xff0c;将目标类信息&#xff0c;传递给IOC容器&#xff0c;为其创…...

iOS开发,SQLite.swift, Missing argument label ‘value:‘ in call问题

Xcode16中&#xff0c;集成使用SQLite.swift&#xff0c;创建表的时候&#xff1a; let id Expression<Int64>("id")&#xff0c;报错Missing argument label value: in call 直接使用SQLite.Expression<Int64>("id") 或者定义一个全局typ…...

【GIT】重新初始化远程仓库

有的时候我们克隆远端仓库会出错&#xff1a; git clone --depth 1 git116.*.*.*:/srv/customs.git D:\dev\projects\kdy\customs11\customs Cloning into D:\dev\projects\kdy\customs11\customs... remote: Enumerating objects: 1494, done. remote: Counting objects: 100…...

Vue3中 ref 与 reactive区别

ref 用途: ref 通常用于创建一个响应式的基本类型数据&#xff08;如 string、number、boolean 等&#xff09;&#xff0c;但它也可以用于对象或数组 返回值: ref 返回一个带有 .value 属性的对象&#xff0c;访问或修改数据需要通过 .value 进行 使用场景: …...

apollo3录音到wav播放解决方法

SDK DEMO项目:ap3bp_evb_vos_pcm_recorder_20210901 pcm_recorder.c //***************************************************************************** // // Options // //***************************************************************************** #define PRINT…...

信号处理抽取多项滤波的数学推导与仿真

昨天的《信号处理之插值、抽取与多项滤波》&#xff0c;已经介绍了插值抽取的多项滤率&#xff0c;今天详细介绍多项滤波的数学推导&#xff0c;并附上实战仿真代码。 一、数学变换推导 1. 多相分解的核心思想 将FIR滤波器的系数 h ( n ) h(n) h(n)按相位分组&#xff0c;每…...

Java网络多线程

网络相关概念: 关于访问: IP端口 因为一个主机上可能有多个服务, 一个服务监听一个端口,当你访问的时候主机通过端口号就能知道要和哪个端口发生通讯.因此一个主机上不能有两个及以上的服务监听同一个端口. 协议简单来说就是数据的组织形式 好像是两个人交流一样,要保证自己说…...

linux centos 忘记root密码拯救

在CentOS 7中&#xff0c;如果忘记root密码&#xff0c;可以通过修改系统启动参数进入单用户模式或紧急模式进行重置。以下是两种常用方法&#xff0c;适用于物理机或虚拟机环境&#xff1a; 方法一&#xff1a;通过rd.break参数重置密码 步骤&#xff1a; 重启系统并进入GRU…...