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);
}
相关推荐
水云桐程序员5 小时前
C++可以写手机应用吗
开发语言·c++·智能手机
三流架构师5 小时前
事业单位资源合集(第二辑)
经验分享
hellokandy6 小时前
Qt QCache 使用指南
qt·lru·qpair·qcache
小许同学记录成长6 小时前
全景扫描瀑布图实现
qt
加号39 小时前
【Qt】 应用程序发布:依赖库拷贝与部署指南
开发语言·qt
小黄人软件9 小时前
C++读写编辑CSV文件示例源码 用于数据导入导出,比Excel好使
开发语言·c++·excel
郭涤生9 小时前
C++各个版本的性能和安全性总结
开发语言·c++
沃虎Chinty-0310 小时前
CHIP LAN(片式网络变压器)选型决策指南:从需求到量产
经验分享·智能硬件
wljy111 小时前
二、静态库的制作和使用
linux·c语言·开发语言·c++
道剑剑非道11 小时前
FFmpeg 6.0 实战:用 C++ 封装摄像头采集与 RTSP 推流
开发语言·c++·ffmpeg