Ostatnio natknąłem się na ciekawą opcję podczas oglądania wideo w Media Player Clasic. Otóż po najechaniu na MPC na pasku zadań w okienku podglądu zobaczyłem przyciski odtwarzacza. Bardzo spodobała mi się taka opcja i chciałem zobaczyć czy zaimplementowanie takiego dodatku we własnym programie będzie trudne. Otóż okazało się, że… nie. Poniżej opis stworzenia prostej aplikacji korzystającej z tego dodatku.

Co nam będzie potrzebne?

Aby rozpocząć zabawę z paskiem zadań musimy ściągnąć paczkę Windows API Code Pack.
Po stworzeniu nowego projektu w Visual Studio musimy podpiąć następujące odwołania:

  • Microsoft.WindowsAPICodePack
  • Microsoft.WindowsAPICodePack.Shell
  • PrezentationCore
  • WindowsBase

Pierwsze dwa musimy dodać z paczki, którą przed chwilą ściągnęliśmy. Ostatnie dwa są w odwołaniach .NET.

Potrzebna nam będzie również ikonka, która będzie nam służyła jako przycisk w naszej aplikacji. Stworzoną przez nas ikonę wrzucamy do zasobów naszego rozwiązania.

Jak to zakodować?

Pierwszą rzeczą jaką musimy zrobić (dla ułatwienia kodowania) jest dodanie przestrzeni nazw

using Microsoft.WindowsAPICodePack.Taskbar;

Następnie dodajemy pole prywatne do naszego formularza:

private ThumbnailToolBarButton btn;

Następnie w konstruktorze formularza dodajemy kod:

            btn = new ThumbnailToolBarButton(Properties.Resources.tbb, "Kliknij");
            btn.Click+=new EventHandler(button1_Click);
            TaskbarManager.Instance.ThumbnailToolBars.AddButtons(this.Handle, btn);

Pierwsza linijka, jest to utworzenie obiektu naszego przycisku. Jako parametry podajemy wcześniej dodaną do zasobów ikonkę, drugi parametr jest to tooltip przycisku. W drugiej linijce, dodajemy zdarzenie, co ma się dziać po naciśnięciu przycisku. W tym przypadku jest to metoda przycisku, który jest już na formularzu. W linijce trzeciej, dodajmy nasz przycisk do kolekcji. Jako pierwszy argument jest tutaj uchwyt do formularza, drugi to przycisk.
Teraz już wystarczy tylko uruchomić nasz program i powinniśmy ujrzeć taki efekt:
Wynik działania programu
Po naciśnięciu przycisku wywoła się metoda, która jest podpięta do Button1, w moim przypadku jest to po prostu wyświetlenie okienka dialogowego.

Cała klasa prezentuje się następująco:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.WindowsAPICodePack;
using Microsoft.WindowsAPICodePack.Shell;
using Microsoft.WindowsAPICodePack.Taskbar;
namespace tbb
{
    public partial class Form1 : Form
    {
        private ThumbnailToolBarButton btn;
        public Form1()
        {
            InitializeComponent();
            btn = new ThumbnailToolBarButton(Properties.Resources.tbb, "Kliknij");
            btn.Click+=new EventHandler(button1_Click);
            TaskbarManager.Instance.ThumbnailToolBars.AddButtons(this.Handle, btn);

        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Komunikat");
        }
    }
}

Promuj

Wyświetleń : 1040