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);
}
相关推荐
Hical6134 分钟前
C++17 实战心得:那些真正改变我写代码方式的特性
c++
Hical611 小时前
实测:C++20 协程 vs Go Gin vs Rust Actix,谁的 Web 性能更强?
c++
草莓熊Lotso2 小时前
《告别 “会用不会讲”:C++ string 底层原理拆解 + 手撕实现,面试 / 开发都适用》
开发语言·c++·面试
优化控制仿真模型2 小时前
【2026】新大纲普通话考试真题题库50套(PDF电子版)
经验分享·pdf
会编程的土豆2 小时前
【数据结构与算法】空间复杂度从入门到面试:不仅会算,还要会解释
数据结构·c++·算法·面试·职场和发展
张槊哲2 小时前
C++ 进阶指南:如何丝滑地理解与实践多线程与多进程
开发语言·c++·算法
雪度娃娃2 小时前
Effective Modern C++——型别推导
开发语言·c++
Hello eveybody2 小时前
介绍一下背包DP(C++)
开发语言·c++·动态规划·dp·背包dp
05候补工程师2 小时前
[线性代数] 判定线性相关性的“降维打击”:从基本定理到速通特殊法
经验分享·笔记·学习·线性代数·考研
charlie1145141913 小时前
AwesomeQt:最小的Qt6系列迷你版本教程发布!
linux·c++·qt·c