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);
}
相关推荐
秦jh_几秒前
【Qt】界面优化
开发语言·qt
Bruce_kaizy5 分钟前
c++ dfs搜索算法——剪枝
c++·深度优先·剪枝
源代码•宸12 分钟前
Leetcode—3. 无重复字符的最长子串【中等】
经验分享·后端·算法·leetcode·面试·golang·string
CSDN_RTKLIB21 分钟前
【std::string】find函数
c++·stl
十五年专注C++开发26 分钟前
浅谈CPU中的SIMD
c++·cpu·代码优化·simd
Wpa.wk27 分钟前
持续集成 - 持续集成工具-Jenkins的部署流程
java·运维·经验分享·ci/cd·自动化·jenkins
Yu_Lijing1 小时前
基于C++的《Head First设计模式》笔记——状态模式
c++·笔记·设计模式
顶点多余1 小时前
静态链接 vs 动态链接,静态库 vs 动态库
linux·c++·算法
AI视觉网奇1 小时前
ue5 开发 web socket server 实战2026
c++·学习·ue5
王老师青少年编程2 小时前
2024年3月GESP真题及题解(C++八级): 接竹竿
c++·题解·真题·gesp·csp·八级·接竹竿