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);
}
相关推荐
码匠许师傅1 分钟前
【C++三方组件】Qt 概览:桌面 C++ 的事实标准与许可证三轨
开发语言·c++·qt
码匠许师傅1 小时前
【C++三方组件】POCO:跨平台系统编程全家桶
开发语言·c++
总线通信小百科1 小时前
车载以太网模块、交换机与媒体转换器:三类设备怎么选?
经验分享·车载以太网
小王C语言2 小时前
Qt常用控件:输入类控件,单行/多行输入框、下拉框、(日期)微调框、旋钮、滑动条
开发语言·qt
1001101_QIA2 小时前
.exe does not seem to be a Qt executable.
开发语言·qt
WBluuue4 小时前
数据结构与算法:分块(一):块状数组、块状链表
数据结构·c++·算法·链表
2601_967212724 小时前
安全型轨道式插座合规资质核查与工程选型技术要点
大数据·经验分享·安全
必须得开心呀5 小时前
字节序大小端科普
c++·程序人生
会编程的小孩5 小时前
C++ 子集
c++
SunkingYang6 小时前
C++20 vs C++17:新特性对比与用法指南
c++·c++20·特性·版本·新特性·对比·c++17