麒麟系统下鼠标进入弹窗失去焦点focus自动隐藏
麒麟系统下鼠标进入届满后触发enterevent,显示弹窗,展示状态
鼠标进入按钮,触发消息显示状态界面
connect(pCase, &CaseItem::signalShowCaseState, this, [=](TasksStatistic taskState) { m_CaseStateWidget.SetTasksStatistic(taskState); QPoint Point = QCursor::pos(); m_CaseStateWidget.move(Point.x() + 10, Point.y() + 10); m_CaseStateWidget.hide();//先隐藏再显示,否则会出现在下面; m_CaseStateWidget.show(); m_CaseStateWidget.setFocus(Qt::FocusReason::ActiveWindowFocusReason);//单击其他位置会触发失去焦点函数,自动隐藏 });
状态显示界面定义
#include "CaseStateWidget.h" #pragma execution_character_set("utf-8") CaseStateWidget::CaseStateWidget(QWidget *parent) : QWidget(parent) { ui.setupUi(this); setWindowFlags(Qt::FramelessWindowHint); connect(ui.pushButton, &QPushButton::clicked, this, [=]() { emit signalShowFailedTask(m_taskstatistic.failedTask); hide(); }); } CaseStateWidget::~CaseStateWidget() { } void CaseStateWidget::SetTasksStatistic(TasksStatistic& taskstatistic) { m_taskstatistic = taskstatistic; ui.labelAll->setText(QString(" 共%1个视频任务").arg(taskstatistic.finished+ taskstatistic.unfinished)); ui.labelFailed->setText(QString("已失败%1个").arg(taskstatistic.failed)); ui.labelFinished->setText(QString("已完成%1个").arg(taskstatistic.finished)); if (taskstatistic.failed==0) { ui.pushButton->hide(); } else { ui.pushButton->show(); } } void CaseStateWidget::focusOutEvent(QFocusEvent *event) { hide(); } void CaseStateWidget::leaveEvent(QEvent *event) { hide(); }
进入自定义按钮的响应函数
#include "CaseStateButton.h" CaseStateButton::CaseStateButton(QWidget *parent) : QPushButton(parent) { } CaseStateButton::~CaseStateButton() { } void CaseStateButton::enterEvent(QEvent *event) { emit signalShowStateWidget(true); } void CaseStateButton::leaveEvent(QEvent *event) { emit signalShowStateWidget(false); }
自己开发了一个股票智能分析软件,功能很强大,需要的关注微信公众号:QStockView
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2021-06-24 tensorflow预定义经典卷积神经网络和数据集tf.keras.applications
2021-06-24 QT失去focus后自动隐藏界面