Что нового

Получение состояния Taskbar'а

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Функция возвращает состояние панели задач (Taskbar). Возвращаемое значение может содержать следующие биты:

$ABS_ALWAYSONTOP - Располагается поверх всех окон
$ABS_AUTOHIDE - Автоматическое скрытие

Для проверки значений используйте BitAND() функцию (см. код). В случае возникновения ошибки функция возвращает 0 и устанавливает @error в 1.


Код:
Global Const $ABS_ALWAYSONTOP = 0x02
Global Const $ABS_AUTOHIDE = 0x01

If BitAND(_TaskbarState(), $ABS_AUTOHIDE) Then
    MsgBox(0, '', 'Auto-hide the taskbar is enabled.')
Else
    MsgBox(0, '', 'Auto-hide the taskbar is disabled.')
EndIf

Func _TaskbarState()

    Local $Ret = DllCall('shell32.dll', 'uint', 'SHAppBarMessage', 'dword', 0x04, 'ptr*', 0)

    If @error Then
        Return SetError(1, 0, 0)
    EndIf
    Return $Ret[0]
EndFunc   ;==>_TaskbarState
 
Верх