当前位置: 首页 > news >正文

Qt 解决程序全屏运行弹窗引发任务栏显示

头图

文章目录

    • 摘要
    • 在VM虚拟机器中测试
    • setWindowFlags()

关键字: QtQt::WindowStayOnTopHintsetWindowFlagsQt::WindowQt::Tool

摘要

今天眼看项目就要交付了,结果在测试程序的时候,发现在程序全品情况下,点击输入框,弹出虚拟软键盘,结果下面任务栏就给弹出来了。其实这个也不算怎么问题,主要就是如果弹出任务栏,就会导致用户可以通过任务来进入到系统其他地方,不符合网络安全相关法规。

其实要解决这个问题也也有很多方法,比如可以在系统层面直接做定制,把不要的都去掉,但是按照目前时间节点是不可能实现的,所以只能在程序上想办法。

在VM虚拟机器中测试

这里还有一个尴尬的点,那就是在虚拟机中测试是没有问题的,在程序调用全屏显示的时候,任务栏是关闭,这就导致一直没有关注这个问题,之前为了开发开发方便,是直接屏蔽登录模块的,这就导致一直没有测试这个键盘输入的问题,今天产品来全流程测试的时候,发现只要在登录框点击输入,弹出软键盘,就会有下面的任务栏显示出来。

image-20230223094222114

所以为了解决这个问题,首要的还是去百度,结果百度的结果都是大家都在等结果,开来还是得应了那句话,网上的问题基本都是自己提问自己回答,所以,还是老老实实自己摸索。

image-20230223095045103

更可气的是,我决绝了这个问题,但是这个问题不让回答了,GGGGG。

setWindowFlags()

这里需要用到这个函数,玩过Qt的对这个应该都不陌生,目前的解决方法就是利用这个还是,将程序全屏以后,使用保持在最前端显示,这里我尝试过将窗口设置为Qt::Tool模式,这个在win下用的没有问题,Linux下直接就给我下面空白了,所以还是得用Qt::Window,但是后面可以再跟一个Qt::WindowStayOnTopHint这样就可以,目前在我程序里面测试没有问题。希望我的这方法也可以解决你的问题,祝君好运。

image-20230223095124631


博客签名2021
http://www.lryc.cn/news/27179.html

相关文章:

  • 【进阶】2、搭建K8s集群【v1.23】
  • 11面向接口编程(下):一切皆服务,服务基于协议
  • 不要以没时间来说测试用例写不好
  • day57-day58【代码随想录】二刷数组
  • 【NLP】自动化计算文本文件TTR的bash脚本
  • 蓝桥杯单片机组省赛十二届第一场(关于矩阵,温度ds18b20,时间ds1302的学习,以及继电器等外设的综合利用)
  • Ubuntu 新人上手 Microk8s 指南
  • 初阶C语言——实用调试技巧【详解】
  • Android 绘图基础:Canvas画布——自定义View基础(绘制表盘、矩形、圆形、弧、渐变)
  • js拷贝数组对象:浅拷贝深拷贝
  • 【C++】string类的使用
  • 微服务架构简介
  • 【Spring源码】AOP的开端:核心对象创建的准备工作
  • 新号涨粉22w,搞笑博主再次爆火,小红书近期创作趋势是什么?
  • 【C++】30h速成C++从入门到精通(内存管理、函数/类模板)
  • 自动驾驶决策概况
  • 金山轻维表项目进展自动通知
  • 基于上下文分析的 Python 实时 API 推荐
  • 软件测试-接口测试-代码实现接口测试
  • 中村成洋《垃圾回收的算法与实现》PDF 读书笔记
  • docker 网络模式
  • 数据库开发(一文概括mysql基本知识)
  • 【JVM】详解Java内存区域和分配
  • JAVA开发(史上最完整追本溯源JAVA历史、发展和学习)
  • Qt 防止程序退出
  • 【校验码 - 循环冗余校验码CRC】
  • 【Rust】一文讲透Rust中的PartialEq和Eq
  • Vulnhub靶场----9、DC-9
  • 使用Containerd搭建K8s集群【v1.25】
  • NMT - 构建双语概率词典(Probabilistic dictionaries)