Ändert das Trayicon.
TraySetIcon ( [filename [, iconID]] )
filename | [optional] Der Dateiname des Icons, welches im Tray angezeigt werden soll. |
iconID | [optional] Iconindex, falls die Datei mehrere Icons enthält. |
Um das Standardicon wiederherzustellen, ist die Funktion ohne Parameter zu verwenden: TraySetIcon().
Die Angabe einer positiven Zahl bezieht sich auf den "string-equivalenten" Iconindex. Das erste Icon hat den Index "0".
Die Angabe einer negativen Zahl führt zu numerischem "Index"-Verhalten, wobei das erste Icon den Index 1 erhält. Einige DLLs können Icons enthalten, die nur mit negativen Nummern entpackt werden.
Der iconfile-Parameter kann auf "blank", "info", "question", "stop" oder "warning" gesetzt werden. um das entsprechende Standardicon auszuwählen.
TraySetPauseIcon, TraySetState
#include <TrayConstants.au3> ; wird für die $TRAY_ICONSTATE_SHOW Konstante benötigt.
#NoTrayIcon
Opt("TrayMenuMode", 3) ; Die Standard Traymenüeinträge (Skript pausieren/beenden) werden nicht angezeigt und die Items werden nicht angehakt wenn diese ausgewählt werden. Verwendet wurden die Optionen 1 und 2 für TrayMenuMode.
Example()
Func Example()
Local $idExit = TrayCreateItem("Beenden")
TraySetState($TRAY_ICONSTATE_SHOW) ; Zeigt das Traymenü.
Local $hTimer = TimerInit() ; Startet den Timer und speichert das Handle in einer Variable.
Local $fDiff = 0, $iIndex = 0
While 1
$fDiff = TimerDiff($hTimer) ; Ermittelt den Zeitunterschied zu dem vorherigen Aufruf von TimerInit
If $fDiff > 1000 Then ; Falls der Unterschied größer als eine Sekunden ist, so wird das Traymenüicon geändert.
$iIndex = -Random(0, 100, 1) ; Negativ um die Ordinalnummerierung zu verwenden
TraySetToolTip("Aktuell wird das Icon shell32.dll, " & $iIndex & " verwendet.") ; Setzt den Traymnenü Tooltip mit Informationen über den Iconindex.
TraySetIcon("shell32.dll", $iIndex) ; Setzt das Traymnenüicon mit der shell32.dll und einer Zufallsindexzahl.
$hTimer = TimerInit() ; Setzt den Timer zurück.
EndIf
Switch TrayGetMsg()
Case $idExit ; Beendet die Schleife.
ExitLoop
EndSwitch
WEnd
EndFunc ;==>Example