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);
}
相关推荐
星火开发设计26 分钟前
序列式容器:deque 双端队列的适用场景
java·开发语言·jvm·c++·知识
LYS_06181 小时前
c++学习(1)(编译过程)
c++·学习
特种加菲猫1 小时前
C++核心语法入门:从命名空间到nullptr的全面解析
开发语言·c++
浮生09191 小时前
DHUOJ 基础 85 86 87
数据结构·c++·算法
CHANG_THE_WORLD2 小时前
C++指针与引用:从语法到底层的全面剖析
java·数据结构·c++
HAPPY酷2 小时前
Visual Studio C++ 项目“添加现有项“避坑指南
java·c++·visual studio
LaughingZhu2 小时前
Product Hunt 每日热榜 | 2026-02-17
大数据·数据库·人工智能·经验分享·搜索引擎
ADDDDDD_Trouvaille3 小时前
2026.2.14——OJ78-82题
c++·算法
LaughingZhu3 小时前
Product Hunt 每日热榜 | 2026-02-15
人工智能·经验分享·深度学习·神经网络·产品运营
CHANG_THE_WORLD3 小时前
C++ 一维、二维、三维数组完整演示
开发语言·c++