3 Zeilen Code: Startleiste

Die neue Startleiste in Windows 7 bringt sehr viele neue Funktionen mit sich. Früher verbarg sich auf dem Kontextmenü eines Symbols in der Startleiste ein schnörkelloses Auswahlmenü. Mit Windows 7 hat man dieses vollständig renoviert und mit vielen neuen Funktionen versehen.

Standardmäßig findet man dort im unteren Bereich immer die Möglichkeit, ein bestimmtes Programm zu starten, zu schließen und an die Startleiste zu heften oder von dieser wieder zu entfernen.

Zusätzlich lassen sich aber auch häufig verwendete Aufgaben integrieren. Microsoft Outlook nutzt diese Funktion, z.B., um direkt eine neue Email, einen neuen Kalendereintrag oder einen neuen Kontakt anzulegen. Dadurch kann der Benutzer noch schneller seine gewünschte Funktion erreichen.  Diese Funktionalität nennt man Sprunglisten.

Besonders interessant ist die Tatsache, dass diese Sprunglisten auch zur Verfügung stehen, wenn die Anwendung gerade nicht gestartet ist. Damit Einträge in der Sprungliste auftauchen, muss die Anwendung zumindest mal gestartet worden sein.

Diese Funktion kann man sehr einfach in seine eigenen Anwendungen integrieren. Am leichtesten geht dies mit dem Windows API Code Pack, welches man unter https://code.msdn.microsoft.com/WindowsAPICodePack herunterladen kann.

Eine Verknüpfung in die Sprungliste einfügen

Um einfach eine Verknüpfung zu einer bestimmten Anwendung in die Sprungliste einzufügen, sind die folgenden Zeilen Code notwendig:

// Pfad zur Datei
string pathToNotepad = Path.Combine(
                Environment.GetFolderPath(Environment.SpecialFolder.System), 
                "notepad.exe");
// Erstellen einer neuen Sprungliste
JumpList jumpList = JumpList.CreateJumpList();
// Einen neuen Eintrag in dieser Liste erstellen
jumpList.AddUserTasks(new JumpListLink(pathToNotepad, "Open Notepad")
{
   IconReference = new IconReference(pathToNotepad, 0)
});
// Aktualisieren der Ansicht
jumpList.Refresh();

Eine neue Kategorie in die Sprungliste einfügen

Einträge in der Sprungliste können auch nach Kategorien gruppiert werden, z.B. „Häufige Aufgaben“, „Zuletzt verwendete Dateien“ oder ähnliches. Um eine solche Kategorie anzulegen sind die folgenden Zeilen notwendig:

// Erstellen der Kategorie
JumpListCustomCategory category = new JumpListCustomCategory("Meine Funktionen");
// Hinzufügen der Kategorie zur Sprungliste
jumpList.AddCustomCategories(category);
// Element zur Kategorie hinzufügen
category.AddJumpListItems(new JumpListLink(pathToNotepad, "Open Notepad"));
// Ansicht aktualisieren
jumpList.Refresh();

Anmerkung

Damit die Funktionen zur Verfügung stehen, müssen die Bibliotheken Shell und Core aus dem Windows API Code Pack in der eigenen Anwendung referenziert werden.

Zusammenfassung

Mit den Sprunglisten in der neuen Startleiste können häufig verwendete Anwendungen oder Programmfunktionen sehr leicht erreicht und dem Benutzer viele Klicks erspart werden.

Download

Windows API Code Pack

Codebeispiel - Startleiste

 

Zur Artikelübersicht „3 Zeilen Code“