VBA Tipp: Eigenes Taskleistensymbol verwenden

Aus DBWiki
Wechseln zu: Navigation, Suche

Aufgabenstellung

Ich möchte für meine Access-Datenbank ein eigenes Symbol in der Taskleiste verwenden.

Lösung

Das geht mit folgender Prozedur, die in einem globalen Modul hinterlegt wird:

Public Sub TaskleistenSymbolErzeugen(iconPfad As String)
 
   'Quelle: http://www.dbwiki.net/
 
   Dim prp As DAO.Property
 
   On Error GoTo Err_TaskleistensymbolErzeugen
 
   'Versuchen, der Property (Eigenschaft) "AppIcon" einen Wert zuzuweisen
   CurrentDb.Properties("AppIcon") = iconPfad
   On Error GoTo 0
 
Exit_TaskleistensymbolErzeugen:
   Exit Sub
 
Err_TaskleistensymbolErzeugen:
 
   'Laufzeitfehler 3270: Eigenschaft nicht gefunden
   If Err.Number = 3270 Then
 
      ' Wenn die Property (Eigenschaft) "AppIcon" nicht existiert, erzeugen
      Set prp = CurrentDb.CreateProperty("AppIcon", dbText, iconPfad)
      CurrentDb.Properties.Append prp
 
      'sofortige Aktualisierung der Titelleiste und der Taskleiste
      RefreshTitleBar
 
   Else
      MsgBox "Laufzeitfehler '" & Err.Number & "':" & vbCrLf & vbCrLf & Err.Description
   End If
 
   Resume Exit_TaskleistensymbolErzeugen
 
End Sub

Aufruf

   Dim iconPfad As String
 
   'Beispiel: Icon-Datei "favicon.ico" im Unterverzeichnis "Bilder"
   iconPfad = CurrentProject.Path & "\Bilder\favicon.ico"
 
   Call TaskleistensymbolErzeugen(iconpfad)

Hinweise

  • Die Property (Eigenschaft) "AppIcon" bleibt in der Datenbank dauerhaft gespeichert, bis sie explizit gelöscht wird. Das heißt, die obige Prozedur braucht nur ein einziges Mal ausgeführt werden, falls sich der Pfad zum Icon nicht ändert.
  • Die Property (Eigenschaft) "AppIcon" kann mit folgendem Code auch wieder gelöscht werden:
   CurrentDb.Properties.Delete "AppIcon"


Wikilinks