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);
}
相关推荐
ulias2129 分钟前
leetcode热题 - 3
c++·算法·leetcode·职场和发展
大彼方..21 分钟前
深入学习cpp初阶模板
开发语言·c++·学习
老四啊laosi32 分钟前
[C++进阶] 25. C++11新特性(一)
c++·c++11·右值
咸鱼翻身小阿橙42 分钟前
QT-P3
开发语言·qt·计算机视觉
零号全栈寒江独钓1 小时前
基于c/c++实现linux/windows跨平台ntp时间戳服务器
linux·c语言·c++·windows
ulias2121 小时前
进程初识(1)
linux·运维·服务器·网络·c++
t***5441 小时前
Orwell Dev-C++ 和 Embarcadero Dev-C++ 哪个更好
开发语言·c++
BestOrNothing_20151 小时前
C++零基础到工程实战(4.3.4):vector数组搜索、删除、插入与排序
c++·vector·sort·find·insert·动态数组·erase
程序阿北2 小时前
再见Visio、Draw.io,用Claude Code三句话生成专业架构图,这个免费 Skill 我用了就回不去了。
经验分享
Fuyo_11192 小时前
带你了解C++的类与对象(中)
c++