c#实现任务栏添加控制按钮

Windows7Taskbar的使用

你需要引入3个文件VistaBridgeLibrary.dll、Windows7.DesktopIntegration.dll、Windows7.DesktopIntegration.Registration.exe

下载地址:http://yunpan.cn/QauRaNK4H3BYW (提取码:fe58)

里面封装好的类:Windows7Taskbar、ThumbButtonManager、ThumbButton、JumpListManager、RegistrationHelper等等

Windows7Taskbar用于注册及初始化,ThumbButtonManager管理ThumbButton,包括创建添加按钮,JumpListManager历史记录,RegistrationHelper关联文件类型

实现步骤:

1.引用

using Windows7.DesktopIntegration;
using Windows7.DesktopIntegration.WindowsForms;

2.初始化(窗体Load时)

Windows7Taskbar.AllowTaskbarWindowMessagesThroughUIPI();Windows7Taskbar.SetCurrentProcessAppId("TaskbarManaged");//里面的参数自定义

3.创建按钮

ThumbButtonManager buttonManager=this.CreateThumbButtonManager();
ThumbButton taskbarBtnPause = buttonManager.CreateThumbButton(101, Properties.Resources.playtask, "播放");
taskbarBtnPause.Clicked += (sender, e) =>
{
  btnPlay_PictureClick(sender, e);
  if (IsPlay == true)//这里判断是否在播放,更新图标
  {
    taskbarBtnPause.Icon = Properties.Resources.playtask;
  }
  else
  {
    taskbarBtnPause.Icon = Properties.Resources.pausetask;
  }};buttonManager.AddThumbButtons(taskbarBtnPause);

4.捕获信息

protected override void WndProc(ref Message m){
  if (buttonManager != null)
     buttonManager.DispatchMessage(ref m);
  base.WndProc(ref m);}

效果图:

需要注意的是:

最多7个button, 没有方法添加或删除一个按钮,在你初始化以后, 只能让它不可用或隐藏.可以调用ThumbBarAddButtons和ThumbBarUpdateButtons方法来控制工具栏.

在窗体的Load时间里添加ThumbButton不会起作用,这就是为什么我不在窗体Load时添加ThumbButton的原因,并且每个ThumbButton都有一个ID,这个ID是你自己分配的,不能重复

遇到的问题:

我给taskbarBtnPause.Clicked添加了一个处理事件,也就是改变图标,结果是当触发该事件时ThumbButton的属性Icon修改了,但是界面没有更新

本文地址:http://www.cnblogs.com/liuxiaobo93/p/3914424.html 暮雨冰蓝

时间: 2024-09-30 20:50:52

c#实现任务栏添加控制按钮的相关文章

如何在导航栏添加hot样式图片

如何在导航栏添加hot样式图片:建议:尽可能的手写代码,可以有效的提高学习效率和深度.在很多网站的导航栏中都有这样的效果,在一个比较热门的栏目上面会有一个动态的小图片用以标示此栏目比较热门或者是新增栏目等等,效果比较美观且人性化,下面就简单介绍一下如何实现此效果,先看一段代码实例: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="autho

Jquery给当前页或者跳转后页面的导航栏添加选中后样式

解决方法有两种:一种是直接给当前页面添加特殊样式,当网页刷新或者跳转到下一页后,样式消失:另一种情况是即使刷新页面后样式仍然有效. 直接上代码: 第一种情况: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 <script type="text/javascript" src="templets/js/jquery.js"></script>  <script type=&qu

UIBarButtonItem导航栏添加按钮

1 前言 UIBarButtonItem为导航栏按钮,在导航栏的左侧和右侧,他们具有许多种不同的形状和形式. 2 代码讲解 ZYViewController.m [plain]  (void)viewDidLoad  {      [super viewDidLoad];      // Do any additional setup after loading the view, typically from a nib.      self.view.backgroundColor = [U

给导航栏添加停留样式

浅谈下给类似导航栏的东东,添加停留样式的三种方法: 实例: HTML代码: <div class="side_layout"> <!--Sidebar content--> <div class="list-group"> <a href="#" class="list-group-item active">项目1 <span class="glyphicon_r

Unity视频播放可添加控制按钮方案

一般在游戏中,经常会有一段游戏故事背景视频,而且有一个跳过的按钮,点击后会跳过视频进入游戏.经过资料搜索,一般在Unity的话,在手机终端会调用 Handheld.PlayFullScreenMovie("test.mp4",Color.black, FullScreenMovieControlMode.CancelOnInput); 最后一个参数总共有4种: FullScreenMovieControlMode.CancelOnInput, FullScreenMovieContro

【Android基础篇】TabHost导航栏添加标签页的三种方法

使用TabHost实现的导航栏有三种添加页面的方法,分别是直接在布局代码的tab里面添加:通过include标签添加:通过Java代码指定另一个Activity添加.下面是三种方法的示例: 直接在布局代码的tab里面添加标签页 使用拖控件拖出来的TabHost,在它的布局层次上会有三个LinearLayout,id分别为tab1.tab2.tab3,如下图所示: 然后我们可以新建一个Layout,在这个Layout里设计好界面后,将xml代码直接放入tab(1.2.3)的标签里,如下图所示,将设

UI: 使用 UIBarButtonItem 给导航栏添加按钮

问题: 希望将按钮添加到导航栏中 1.导航栏属于 UINavigationBar 类,你可以再任何时候创建它,并将它添加到任意的 view 中. 2.创建一个导航按钮,须要做一下工作: 创建一个 UIBarButtonItem 实例. 使用视图控制器的 navigationItem 属性将按钮添加到视图控制器的导航栏中,. NavigationItem 属性允许我们与导航栏进行交互.这个属性自身有两个属性,分别为 rightBarButtonItem 和 leftBarButtonItem.这两

利用Jquery给当前页或者跳转后页面的导航栏添加选中后样式

当鼠标选中页面导航栏的某一栏目后,如何给选中栏目添加特殊样式,一直没怎么搞清楚,今天学习了一下,并做个总结. 这边有两种情况,一种是直接给当前页面添加特殊样式,当网页刷新或者跳转到下一页后,样式消失:另一种情况是即使刷新页面后样式仍然有效. 直接上代码: 第一种情况: <script>   $(document).ready(function(){       $(".nav a").each(function(){           $(this).click(func

Android在导航栏添加音量加减按钮安卓源码案例

有些Android设备没有实体的音量调节按钮,或者从保护实体按键的角度考虑,就需要在导航栏的虚拟按键中添加音量加减调节按键. 在这里我推荐一下比较好的android源码片段网站:http://code.662p.com/list/173_1.html 效果如下图所示: 实现过程如下: 1.首先在SystemUI中添加音量加减的资源文件,路径如下: frameworks/base/packages/SystemUI/res/ 将图片放入对应的drawable文件夹,包括音量+,和音量-,见上图.