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);
}
相关推荐
良木生香4 分钟前
【C语言进阶】文件操作的相关详解(1):
c语言·数据结构·c++
Larry_Yanan4 分钟前
Qt安卓开发(三)双摄像头内嵌布局
android·开发语言·c++·qt·ui
玖釉-15 分钟前
[Vulkan 学习之路] 01 - 迈入高性能图形开发的大门 (Windows 环境搭建)
c++·windows·图形渲染
github.com/starRTC36 分钟前
小白QT之QGraphicsScene场景视图
qt
CSDN_RTKLIB1 小时前
【字符编码】字符串处理流程
c++
带土11 小时前
8. C++ explicit 关键字
开发语言·c++
im_AMBER1 小时前
Leetcode 103 反转链表 II
数据结构·c++·笔记·学习·算法·leetcode
测绘小沫-北京云升智维1 小时前
极飞植保无人机喷头故障维修指南
经验分享·无人机
hqwest2 小时前
码上通QT实战27--系统设置02-加载用户列表
开发语言·qt·sqlite·qtablewidget
测绘小沫-北京云升智维2 小时前
无人机飞行抖动维修办法
经验分享·无人机