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);
}
相关推荐
WWW652644 分钟前
代码随想录 打卡第五十四天
数据结构·c++·算法
公考指南针1 小时前
公务员面试怎么准备?2026 结构化面试流程、答题训练和备考工具测评
经验分享·学习·面试
redaijufeng1 小时前
我在C++中深入理解了继承,收获颇丰
java·c++·算法
.千余1 小时前
【C++】C++继承入门(上):继承语法与基本特性详解
开发语言·c++·笔记·学习·其他
小短腿的代码世界1 小时前
Qt Quick 3D场景导入与渲染架构深度解析:从USD到PBR材质的完整管线
qt·3d·架构
小短腿的代码世界1 小时前
Qt文本布局引擎深度解析:从QTextDocument排版到渲染的完整架构
开发语言·qt·架构
哎呦,帅小伙哦1 小时前
一个通用的异步任务提交器
c++
小短腿的代码世界1 小时前
Qt Firebase集成深度解析:移动与嵌入式云后端解决方案
开发语言·qt
闻道且行之2 小时前
Hair Segmentation:MediaPipe 头发分割模块 CMake 独立编译
c++·人工智能·深度学习·神经网络·opencv·计算机视觉
Irissgwe2 小时前
C++ STL 详解:list 的介绍使用与模拟实现
开发语言·c++·stl·list