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);
}
相关推荐
宝宝单机sop31 分钟前
军队文职资源合集
经验分享
SHERlocked931 小时前
摄像头 RTSP 流视频多路实时监控解决方案实践
c++·后端·音视频开发
yuhaiqun19892 小时前
Typora 技能进阶:从会写 Markdown 到玩转配置 + 插件高效学习笔记
经验分享·笔记·python·学习·学习方法·ai编程·markdown
tang&2 小时前
哈希碰撞攻防战:C++闭散列与开散列实现全解析
c++·哈希算法
宝宝单机sop2 小时前
产品经理资源合集
经验分享
眠りたいです2 小时前
现代C++:C++11并发支持库
开发语言·c++·多线程·c++11·c++并发支持库
小灰灰搞电子2 小时前
Rust可以取代C++么?
开发语言·c++·rust
奇树谦2 小时前
【Qt实战】实现图片缩放、平移与像素级查看功能
开发语言·qt
Ronin3053 小时前
远程控制软件使用体验分享:2025年个人实测记录
经验分享·用户体验
微笑倾城3 小时前
Windows平台下CMake工程中使用protobuf
c++·cmake