Qt无边框窗口,关闭后再show,鼠标等事件不响应问题解决办法

问题描述

使用Qt做了一个无边框界面,关闭后再打开,子控件的点击以及hover效果不可用。

c 复制代码
setWindowFlags(windowFlags() | Qt::Dialog | Qt::FramelessWindowHint);//去掉标题栏

解决方案:

在网上发现可以通过重写showEvent(QShowEvent* showEvent)函数,在里面调用setAttribute(Qt::WA_Mapped);可以解决问题记录一下。

cpp 复制代码
void Class::showEvent(QShowEvent* showEvent)
{
	setAttribute(Qt::WA_Mapped);
	QDialog::showEvent(showEvent);
}
相关推荐
Teleger14 小时前
在window上使用c++控制鼠标点击,实现的exe
c++·单片机·计算机外设
June`15 小时前
高并发内存池如何实现
c++·tcmalloc·内存池
ComputerInBook15 小时前
C++ 关键字 constexpr 和 consteval 之注意事项
开发语言·c++·constexpr·consteval
优化控制仿真模型15 小时前
30套高级毕业答辩ppt模版(免费下载)
经验分享·pdf
米啦啦.15 小时前
STL(标准模板库)
开发语言·c++·stl
咩咦15 小时前
C++学习笔记08:指针和引用的区别
c++·学习笔记·指针·引用·指针和引用
小袁说公考15 小时前
公考培训机构2025年度测评:财务健康度与用户体验重构排名格局
大数据·人工智能·经验分享·笔记·其他·重构·ux
洛水水15 小时前
【力扣100题】34.二叉搜索树中第K小的元素
c++·算法·leetcode
无尽冬.16 小时前
个人八股之string字符串
java·开发语言·经验分享·后端·异世界
许长安16 小时前
gRPC Keepalive 机制
c++·经验分享·笔记·rpc