-
2021-12-28 22:28:53
在客户端应用开发时,有时需要获取任务栏的高度及位置来变换窗口、控件或提示消息的位置,Qt提供了类QDesktopWidget来获取窗体相应的信息,例如下面的代码:
#include "mainwindow.h" #include "ui_mainwindow.h" #include <QDesktopWidget> #include <QDebug> MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); //在构造函数测试 test_taskBar(); } MainWindow::~MainWindow() { delete ui; } void MainWindow::test_taskBar() { QDesktopWidget* desktopWidget = QApplication::desktop(); QRect appRect = desktopWidget->availableGeometry(); qDebug() << appRect.width(); qDebug() << appRect.height(); QRect fullScreenRect = desktopWidget->screenGeometry(); qDebug() << fullScreenRect.width(); qDebug() << fullScreenRect.height(); if (appRect.bottom() != fullScreenRect.bottom()) { qDebug() << u8"任务栏在底部"; } else if (appRect.top() != fullScreenRect.top()) { qDebug() << u8"任务栏在顶部"; } else if (appRect.left() != fullScreenRect.left()) { qDebug() << u8"任务栏在左边"; } else if (appRect.right() != fullScreenRect.right()) { qDebug() << u8"任务栏在右边"; } else //任务栏处于自动隐藏状态 { qDebug() << u8"任务栏处于自动隐藏状态"; } }
控制台输出
由此可以看出,任务栏的高度是1080 - 1020 = 60
上述代码主要用到QDesktopWidget类
- availableGeometry() 获取应用程序的全屏时不带任务栏的rect
- screenGeometry() 获取的是电脑整个屏幕的rect
在使用QDesktopWidget类时需要包含头文件#include ,具体用法可以看看qt文档.
在使用QDesktopWidget类时需要包含头文件#include ,具体用法可以看看qt文档
Header: #include <QDesktopWidget> qmake: QT += widgets Inherits: QWidget
该类已经被qt遗弃了, 但是用一用问题不大。
This class is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.该类还提供了判断widget是否在屏幕里的方法
- int QDesktopWidget::screenNumber(const QWidget *widget = nullptr) const
返回包含小部件最大部分的屏幕索引,如果小部件不在屏幕上,则返回-1。
在放大窗口时,可以选择正常放大
showMaximized();
以及全屏放大,通常视频播放器这类软件,会用到全屏显示
showFullScreen();不过全屏时,其它控件或窗体得做隐藏操作。
更多相关内容 -
解决Windows11任务栏预览没有标题
2022-03-30 14:49:00如题,正常鼠标悬停在任务栏后台应用什么应该是这样的: 但是我的电脑之前不能显示标题: 百度了很久也没能解决,后来一次偶然的机会发现了原因所在。是因为以前设置了始终不合并任务栏造成的。 解决方法: ...问题描述:
如题,正常鼠标悬停在任务栏后台应用什么应该是这样的:
但是我的电脑之前不能显示标题:
百度了很久也没能解决,后来一次偶然的机会发现了原因所在。
是因为以前设置了始终不合并任务栏造成的。
解决方法:
使用Dism++,在系统优化中,将任务栏被占满时改为“始终合并”即可解决。
-
C#实现任务栏通知窗口
2021-01-20 05:45:19这样的通知窗体和一般的具备标题栏、系统图标和按钮的窗体没有太大的区别,窗体表面其实就是画上去的一张位图而已,而窗体的浮动则会复杂一点,我们会用到.Net框架的双重缓冲区绘图技术(参见作者编译文章“Windows... -
WinForm实现窗体最大化并遮盖任务栏的方法
2020-09-03 09:58:32主要介绍了WinForm实现窗体最大化并遮盖任务栏的方法,涉及C#实现WinForm窗体全屏显示的实现及调用技巧,具有一定参考借鉴价值,需要的朋友可以参考下 -
设置win7任务栏显示标题,而不是显示缩略图
2019-01-08 22:11:121.在桌面上的计算机图标右键,选择属性,在弹出窗口选择高级系统设置 2.选择高级--设置 3.在自定义中勾去“启用桌面组合”点确定即可1.在桌面上的计算机图标右键,选择属性,在弹出窗口选择高级系统设置
2.选择高级--设置
3.在自定义中勾去“启用桌面组合”点确定即可
-
WinCenterTitle:WinCenterTitle是一个简单的工具,可让您在Windows 10标题栏中使文本居中对齐,与Windows 8...
2021-05-27 16:29:14WinCenter标题WinCenterTitle是一个简单的工具,可让您在Windows 10标题栏中使文本居中对齐,就像在Windows 8、8.1甚至3.1中一样。安装从下载档案解压缩到您选择的文件夹(已预配置为C:\ WinCenterTitle ) 根据您... -
C#获取任务栏显示进程的方法
2020-09-03 10:12:43主要介绍了C#获取任务栏显示进程的方法,涉及C#针对进程操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下 -
Windows下QT设置应用程序(exe)图标、任务栏托盘图标、任务栏窗口图标
2020-08-11 18:47:392. 设置任务栏托盘图标 任务栏托盘图标,即 在程序中写入如下代码,并把图片资源放到相应位置,即可实现设置程序的任务栏托盘图标,效果图如上 QSystemTrayIcon* pSystemTray = new QSystemTrayIcon(); if (NULL != ...1. 设置应用程序(exe)图标
在Qt助手(QT Assistant)中,输入“setting”,可以看到下面的列表中有Setting the Application Icon,双击它就可以看到右侧窗口中的帮助文档,帮助文档里介绍了如何设置应用程序图标。文档内容很全面,包括如何设置windows、OS X和linux的程序图标。这里我们介绍如何设置windows下应用程序的图标
QT助手介绍了2种设置windows应用程序图标的方法。
方法一:
在QT工程路径(.pro文件所在路径)下,新建文件夹Icon,将图标文件test1.ico放到该文件夹下
修改工程文件XXX.pro,在该文件的最后加入下面这行
RC_ICONS = Icon\test1.ico
保存XXX.pro文件后,重新构建该工程得到的应用程序的图标,即变为设置的图标,效果如下
方法二:
在项目的目录中新建文本文档,然后将文件名称改为"工程名".rc,当做文本文档打开"工程名".rc,输入下面内容(图标文件复用方法一中的图标)
IDI_ICON1 ICON DISCARDABLE "Icon/test1.ico"
修改工程文件XXX.pro,在该文件的最后加入下面这行
RC_FILE = IconTest.rc
保存XXX.pro文件后,重新构建该工程得到的应用程序的图标,即变为设置的图标,效果如下
特别说明:如果不做其他设置,则这个应用程序的所有窗口在任务栏展示出来的图标均为这个图标
2. 设置任务栏托盘图标
任务栏托盘图标,即
在程序中写入如下代码,并把图片资源放到相应位置,即可实现设置程序的任务栏托盘图标,效果图如上
QSystemTrayIcon* pSystemTray = new QSystemTrayIcon(); if (NULL != pSystemTray) { pSystemTray->setIcon(QIcon(":/IconResources/Icon/test2.ico")); pSystemTray->setToolTip("55555"); pSystemTray->show(); }
3. 设置任务栏窗口图标
任务栏窗口图标,即
在窗口类中,加入如下代码,并把图片资源放到相应位置,即可实现设置任务栏窗口图标,效果图如上
setWindowIcon(QIcon(":/IconResources/Icon/test3.ico"));
特别说明:如果没有单独设置子窗口的任务栏图标,那么子窗口会继承父窗口的任务栏图标。
-
更改任务栏上显示的应用程序标题和图标,而不更改Form.Text和Form.Icon
2021-04-04 15:23:26为了保持一致,任务栏中的图标是表单上的图标(因此对用户有意义)。 如果您想这样做,我想做的唯一方法就是“稍作努力”。 将“显示在任务栏”属性更改为false创建新表单,并强制其保持最小化更改... -
VC++系统任务栏设置演示
2021-03-15 15:58:54摘要:VC/C++源码,系统相关,任务栏 VC++系统任务栏设置演示,一共实现三个功能:1、如何隐藏操作系统任务栏;2、如何取消隐藏任务栏的功能;3、如何检索系统任务栏各窗口标题。 -
Unity3D C#之IL2CPP Windows端隐藏任务栏图标并添加至托盘
2021-11-06 11:27:00在这篇文章中,我们实现了点击最小化和关闭菜单将程序隐藏到任务栏的功能,但是这篇文章需要额外一个winform程序来处理任务栏的功能,有没有方法可以不需要依赖其他程序也能实现这个需求呢?当然有的,使用Windows... -
windows状态栏里显示实时网速
2021-01-07 00:04:43小可爱我上线了~ ...选择语言以及你正在用的网络设备,确认就完事了,你就可以看到你的任务栏里有U和D,接下来的几步也不用继续了 但是,如果不幸出现了以下这个结果,你可能不能直接一键安装了,不过步 -
获取window任务栏运行程序图标和标题
2019-08-09 17:55:37//通过窗口类名和窗口名获取窗口句柄 HWND MainWindow::GetwinId(void) { LPCWSTR app = NULL; // QString ClassName("Qt5QWindowIcon"); // app = reinterpret_cast(ClassName.data()); ... -
KDE 桌面环境配置之取消标题栏和自动隐藏任务栏
2021-09-17 21:01:59本文记录了 在 plasma 上设置取消标题栏和自动隐藏任务栏的设置。 总体效果如下 取消标题栏 找到 System setting -> Workspace -> Windows Management -> Windows Rules. 选择新建,在 description 中... -
electron监测Windows任务栏点击
2019-07-24 17:23:18new BrowserWindow({ minimizable: true, //可否最小化 maximizable: true, //可否最大化 }) 不要想太多,只需要设置 minimizable 和 maximizable 为 true 就可以了 ...点击windows任务栏... -
win10隐藏任务栏_推荐我使用的一个任务栏软件:7+ Taskbar Tweaker
2020-10-25 03:08:27推荐我喜欢的一个任务栏工具:7+ Taskbar 从Win7用到Win10,我最喜欢的就是任务栏按钮随意排序 与 中间点击关闭窗口。由于使用习惯,经常需要在窗口间切换,但不想看标题名称,就通过它排进行排序,以后要快速切换,... -
Python 将窗口嵌入到任务栏,在任务栏显示文本
2020-12-06 11:10:40大致了解以下Windows的任务栏,任务栏实质上是一个容器(类名为“Shell_TaryWnd”),在这个容器中有个二级容器(类名为“ReBarWindow32”),在这个二级容器中还有一个类名为“MSTaskSwWClass”的窗口,用来存放最小化... -
Electron常见问题 24 - 如何隐藏任务栏窗口(windows and mac)
2020-08-27 15:31:19如果我们在electron工程中创建了多个BrowserWindow对象,那么在windows的任务栏和mac的程序坞中就会出现多个缩略图窗口并排,非常影响美观。mac的话还能接受,但是windows的话,让人忍不了。 那么怎么解决解决这个... -
ubuntu顶部的任务栏-标题栏-菜单栏-启动器消失不见7个解决办法
2021-07-12 11:45:17进入桌面后找不到启动器,菜单栏和标题栏了,终端可以打开,也能通过终端运行程序。 有两次是重启机器就好了,有一次是重装了桌面解决的。 自己分析了一下,出现这种问题一般还是软件的兼容性问题导致的,就是对... -
Win10系统任务栏如何设置透明?Win10任务栏设置完全透明效果方法
2021-07-27 03:45:49设置桌面背景都是小KS,将Win10系统的任务栏设置完全透明你了解过吗,那么Win10系统任务栏如何设置透明?下面装机之家分享一下Win10任务栏设置完全透明效果方法,具体操作如下。Win10任务栏设置100%透明效果Win10... -
电脑任务栏闪烁以及任务栏图标闪烁解决办法
2020-12-31 12:31:18前言:近来笔者发现电脑不时的电脑桌面和菜单栏会不停的闪烁,只能通过Ctrl + shift + ESC打开任务管理器来重启资源管理器,但是发现重启之后的一会儿好了,但是过一会儿又闪烁,后来琢磨好久,才发现是有软件在更改... -
Electron.js指南——Windows任务栏
2020-10-19 17:32:24Windows任务栏 Electron具有用于在Windows任务栏中配置应用程序图标的API。支持的是一个创建JumpList,自定义缩略图和工具栏,图标覆盖,以及所谓的“闪框”效果,但Electron也使用app的Dock图标来实现类似的跨平台... -
教你电脑任务栏透明设置教程
2021-07-27 03:47:28一般情况下,win10系统任务栏是默认设置好的,看到别人电脑任务栏是透明的,是否自己也想将电脑任务栏能变透明呢?如果是的话,请来看看下面的电脑任务栏透明设置教程吧。电脑任务栏透明设置教程:1,在Windows10桌面... -
electron 自定义标题栏(windows 系统)
2022-02-08 19:28:56其实没有网上那么麻烦,如果你仅仅只是想去掉标题,还有下面的工具栏,只需要如下配置 const win = new BrowserWindow({ width: 800, height: 600, titleBarStyle: "hidden", titleBarOverlay: { color: "#fff... -
VB具有修改导航标题功能的“常见任务栏”导航窗口
2021-05-11 12:37:18摘要:VB源码,界面编程,任务栏 具有修改导航标题功能的“常见任务栏”导航窗体,类似windows的资源管理器窗口中,和打开我的电脑时候相似,可以修改导航标题。 运行环境:Windows/VB6 -
win11任务栏怎么更换颜色 win11任务栏更换颜色的设置方法
2021-12-24 15:54:31大家都知道我们安装好一个系统之后,系统的颜色都是默认的,有朋友说不喜欢win11系统的任务栏颜色,但是却不知道如何修改,其实方法不难,今天小编来跟大家说说win11任务栏颜色怎么改的步骤教程,大家一起来看看吧。... -
VC.NET为标题栏右键增加菜单项
2021-03-15 15:23:52在窗口标题栏右键菜单中增加菜单项,你会发现标题栏菜单和窗口打开时显示在任务栏处的菜单是一样的,所以说本程序代码也实现了任条栏处增加一个自定义菜单项,具体代码比较简单,请参阅源码。 运行环境:Visual ... -
windows远程桌面连接任务栏显示问题
2021-04-08 21:32:53使用windows远程桌面连接时,打开被控主机界面之后,仍然可以看见原主机任务栏。 解决方法:任务管理器中,重启资源管理器。 不知道为什么? -
电脑的任务栏在不停闪烁,这个是什么问题引起的
2021-01-13 20:50:02在使用电脑的时候,电脑的任务栏一直不停的闪烁,当遇到这个问题的时候,我们应该怎么样更好的解决问题。1、进入设置更新和安全恢复2、找到高级启动,点击“立即重启3、重启后,进入第一个选择画面,点击“疑难解答...