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 暮雨冰藍

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM