Qt扫盲-Windows任务栏使用总结

news2024/11/15 15:36:16

Qt扫盲-Windows任务栏使用总结

  • 一、概述
  • 二、覆盖图标和进度指示器
  • 三、跳转列表
  • 四、缩略图工具栏

一、概述

任务栏为用户提供了访问桌面上打开的应用程序的权限。Windows自动在任务栏上创建用于访问应用程序窗口的按钮。
从 Windows 7到Windows10 都有效果。就是在任务栏上的一个优化功能。

二、覆盖图标和进度指示器

你可以使用QWinTaskbarButton类来设置一个覆盖图标,使用QWinTaskbarProgress类在任务栏按钮上显示进度指示器。覆盖图标表示应用程序状态的更改。进度指示器显示耗时任务的进度。像这种在赋值大文件的时候,可以显示这个进度的。
在这里插入图片描述

任务栏的例子
下面的示例代码演示了如何使用QWinTaskbarButton和QWinTaskbarProgress类来调整任务栏按钮的外观:

QWinTaskbarButton *button = new QWinTaskbarButton(widget);
button->setWindow(widget->windowHandle());
button->setOverlayIcon(QIcon(":/loading.png"));

QWinTaskbarProgress *progress = button->progress();
progress->setVisible(true);
progress->setValue(50);

三、跳转列表

应用程序可以使用跳转列表为用户提供更快的文件访问或显示任务或命令的快捷方式。这个就是鼠标右键单击激活
在这里插入图片描述

  • Destinations:应用程序可以处理的文件和url的分类快捷方式,甚至链接到其他应用程序。除了应用程序可以自己创建的类别之外,Windows还提供了两个可以添加到自定义跳转列表的标准类别。
  • Recent 和Frequent:当应用程序使用QFileDialog::getOpenFileName()函数时,或者当应用程序启动以从Windows shell打开文件时,Windows自动填充的所谓的已知类别。
  • Tasks:即显示一些应用功能的快捷方式。应用程序可以在任务列表上显示最常用的上下文无关函数。

注意:为了能够将目的地添加到跳转列表中,应用程序应该将自己与它可以处理的文件类型关联起来。

其实在资源管理器也用了这个功能
在这里插入图片描述

下面的示例代码演示了如何使用QWinJumpList和QWinJumpListItem类中的类来实现跳转列表:

QWinJumpList jumplist;

QWinJumpListCategory *tasks = jumplist.tasks();
QWinJumpListItem *newProject = new QWinJumpListItem(QWinJumpListItem::Link);
newProject->setTitle(tr("Create new project"));
newProject->setFilePath(QDir::toNativeSeparators(QCoreApplication::applicationFilePath()));
newProject->setArguments(QStringList("--new-project"));
tasks->addItem(newProject);

tasks->addLink(tr("Launch SDK Manager"), QDir::toNativeSeparators(QCoreApplication::applicationDirPath()) + "\\sdk-manager.exe");

tasks->setVisible(true);

四、缩略图工具栏

应用程序可以在窗口的缩略图中嵌入工具栏,当鼠标悬停在任务栏图标上时就会显示。缩略图工具栏可以提供对窗口命令的快速访问,而不需要用户恢复或激活窗口。
在这里插入图片描述

缩略图工具栏示例
下面的示例代码演示了如何使用QWinThumbnailToolBar和QWinThumbnailToolButton类中的函数来实现缩略图工具栏:

QWinThumbnailToolBar *thumbbar = new QWinThumbnailToolBar(widget);
thumbbar->setWindow(widget->windowHandle());

QWinThumbnailToolButton *settings = new QWinThumbnailToolButton(thumbbar);
settings->setToolTip("Settings");
settings->setIcon(":/settings.png");
settings->setDismissOnClick(true);
connect(settings, SIGNAL(clicked()), settingsPage, SLOT(show()));

QWinThumbnailToolButton *playPause = new QWinThumbnailToolButton(thumbbar);
playPause->setToolTip("Play/Pause");
playPause->setIcon(":/play.png");
connect(playPause, SIGNAL(clicked()), mediaPlayer, SLOT(play()));

thumbbar->addButton(settings);
thumbbar->addButton(playPause);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/141519.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于springboot框架个人博客管理系统

一、项目简介 本项目是一套基于springboot框架实现的个人博客管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试&a…

头歌:UDP Ping程序实现 客户端创建UDP套接字

头歌平台:头歌实践教学平台 (educoder.net)创建数据包套接字套接字 Socket 实质上提供了主机间进程通信的连接点。进程通信之前,双方首先必须各自创建一个连接点,否则是没有办法建立联系并相互通信的。一个完整的 Socket {协议,本地地址,本地端口,远程地…

在 React 中使用 i18next

1. 安装依赖 npm i i18next react-i18next i18next-browser-languagedetectori18next 提供了翻译的基本能力。react-i18next 是 i18next 的一个插件,用来降低 react 的使用成本。i18next-browser-languagedetector 是用来检测浏览器语言的插件。 2. 在src下创建i18…

.net core 中使用confluent kafka构建生产者

创建.net 6 API安装依赖包 创建kafka生产者 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Confluent.Kafka; using Confluent.Kafka.Admin; using KafkaHelper.Config; using Microsoft.Exte…

Cuk拓扑产生负压

1、基础拓扑的输入输出电流连续情况 1>Buck电路 图中绿色波形为输入端的电流(测的图中MOS上的电流),蓝色的输出端的电流(图中电感L4的电流),可以看出输入端电流不连续,输出端电流连续。 2&…

Revit中项目特别大如何将项目完整的体现在图纸中?

一、Revit中项目特别大如何将项目完整的体现在图纸中? 遇到项目特别大,在一张图纸是放置不下时,如图1所示,怎样才能将项目完整的体现在图纸当中? 在遇到特别大的项目可能会在图纸中放不下,在这种情况下我们要用拼接线来处理。在…

【JavaEE】SSM框架

文章目录一、Spring1、Spring相关概念1.1 Spring Framework系统架构1.2 核心概念(lOC、lOC容器、Bean、DI)2、入门案例2.1 IOC入门案例2.2 DI入门案例3、lOC相关内容3.1 bean配置3.2 bean实例化3.3 bean的生命周期3.3.1 控制bean生命周期执行的方法3.3.2 bean销毁时机4、DI相关…

AI智能分析在智慧电厂的典型应用

电力供应是整个社会生产、人民生活的基本保证之一。智慧电力作为城市智能化发展的客观需求,是智慧城市的重要基础,也是智慧城市建设的一项重要内容。 智慧能源用最前沿技术淋漓尽致地表达着对未来能源发展趋势的理解与实践。智慧电力将多项创新成果应用于…

【前端】Vue项目:旅游App-(6)city:隐藏TabBar的2种方法

文章目录目标过程与代码方法1:通过路由隐藏方法2:用样式隐藏对方法2封装总代码修改的文件common.cssindex.jscity.vue目标 city页是点击上篇“广州”位置所跳转的页面。此页面要隐藏TabBar。 过程与代码 city页要隐藏TabBar。我们这里有两种隐藏的方法…

【Effective Objective - C】—— 读书笔记(五)

【Effective Objective - C】—— 读书笔记(五) 内存管理 文章目录【Effective Objective - C】—— 读书笔记(五)内存管理29.理解引用计数引用计数工作原理属性存取方法中的内存管理自动释放池保留环要点30.以ARC简化引用计数使…

Qt扫盲-QSystemTrayIcon理论总结

QSystemTrayIcon理论总结一、概述二、使用对象三、使用四、常用函数介绍1. 静态函数2. 公共槽函数3. 信号一、概述 现代操作系统通常在桌面上提供一个特殊的区域,称为系统托盘或通知区域,长期运行的应用程序可以在这里显示图标和短消息。什么意思呢&…

【Spring】1. Java对象序列化和反序列化

1. 概念 1.1 序列化 将数据结构或对象转换成二进制字节流的过程 1.2 反序列化 序列化的反过程把二进制字节流恢复为数据结构或对象的过程1.3 序列化的目的: 通过网络传输对象或者说是将对象存储到文件系统、数据库、内存中。 2. 为什么要进行序列化?&…

【Linux】Linux开发工具(一)——vim工具

作者:一个喜欢猫咪的的程序员 专栏:《Linux》 喜欢的话:世间因为少年的挺身而出,而更加瑰丽。 ——《人民日报》 目录 1.什么是vim 1.1什么是vim 1.2vim和vi的区别: 2.vim基础 2.…

字符串的模式匹配

字符串的模式匹配引言应用方法一 暴力匹配算法 (C语言实现)程序实现暴力算法思想暴力算法的时间复杂度方法二 KMP 算法程序实现KMP 算法思想KMP 算法的时间复杂度暴力匹配算法 vs KMP 算法next 数组的训练KMP 算法的优化next 数组 转换成 nextval 数组的思想引言 在我们日常生…

第12章 角色页的修改、添加

1 定义src\components\Users\EditRole.vue <template> <el-dialog width"30%"> <!-- <span>{{propParent}}</span> --> <template #header> <div class"my-header"> <h1 style"margin: 0px; padding: …

快速指南 :ESP-IDF 自定义以太网 PHY 驱动程序

“我想用我最喜欢的芯片开始新的产品设计&#xff0c;但它断货了&#xff01;哦&#xff0c;不&#xff01;我必须设计一个新的 PCB&#xff0c;并重新开发驱动程序&#xff01;”如今&#xff0c;每个设计师都非常清楚这种感觉…好消息是&#xff0c;至少在 ESP-IDF 以太网 PH…

[C语言]浮点型在内存中的存储

在上一篇文章&#xff0c;我们讲述了整型在内存中的存储&#xff0c;这篇文章我们就一起来看一下“浮点型在内存中的存储” 回顾&#xff1a;整型在内存中的存储[C语言]和我一起来认识“整型在内存中的存储”_HY_PIGIE的博客-CSDN博客 目录 1.浮点数家族 2.整型和浮点型的存储…

教你从零开始搭建自己的魔兽世界服务器

首先需要一份 WOW 的程序底包:1底包使用方法: 解压后,放到 d: 目录即可, 如下图 &#xff08;最好是D盘下 因为有很多东西都是D:/连接的 &#xff09;2运行http-mysql/下的文件INIT.CM_重命名为INIT.CMD 运行3设置登录器下载 &#xff0c;在http-mysql/htdocs下创建DOWNLOAD文件…

再次改进MBR(从磁盘读入Loader加载器)

文章目录前言前置知识代码说明实验操作前言 本博客记录《操作系统真象还原》第二章第2个实验操作~ 实验环境&#xff1a;ubuntu18.04VMware &#xff0c; Bochs下载安装 实验内容&#xff1a;从磁盘读入Loader加载器 实验思路&#xff1a; MBR 受到512字节大小的限制&#…

kernel pwn gdb调试

前言 对于Linux的二进制程序&#xff0c;gdb调试是十分重要的&#xff0c;可以清楚的了解程序是如何运行的&#xff0c;这里单独拉一篇记录我在kernel pwn中遇到的一些调试 GDB选择 在三大件pwndbg,gef,peda中&#xff0c;用了一圈下来感觉gef和pwndbg都挺好 gdb安装 简单…