Как узнать состояние и размеры панели задач Windows
Для получения рабочей области экрана, доступной вашему приложению, может потребоваться определение положения и размера панели задач. Управлять положением и состоянием панели задач пользователь может через меню свойств или через апплет настроек. А для получения всех необходимых данных надо воспользоваться функцией SHAppBarMessage. Но сперва структура и несколько констант, которые будут нам нужны для работы.Code (Assembler) : Убрать нумерацию
- struct APPBARDATA
- cbSize dd ?
- hwnd dd ?
- uCallbackMessage dd ?
- uEdge dd ?
- rc RECT
- lParam dd ?
- ends
- ABM_GETSTATE = 4
- ABM_GETTASKBARPOS = 5
Code (Assembler) : Убрать нумерацию
- mov [abd.cbSize],sizeof.APPBARDATA
- invoke SHAppBarMessage,ABM_GETTASKBARPOS,abd
- ; [abd.uEdge] -> положение панели задач
- ; 0 = слева
- ; 1 = сверху
- ; 2 = справа
- ; 3 = снизу
- ; [abd.rc] -> координаты Панели задач
С помощью сообщения ABM_GETSTATE получаем текущее состояние настроек панели задач. Это комбинация флагов "автоматически убирать с экрана" и "показывать поверх всех окон":
Code (Assembler) : Убрать нумерацию
- mov [abd.cbSize],sizeof.APPBARDATA
- invoke SHAppBarMessage,ABM_GETSTATE,abd
- ; EAX -> состояние панели задач
- ; 0 = не убирать автоматически и не показывать поверх всех окон
- ; 1 = автоматически убирать с экрана
- ; 2 = показывать поверх всех окон
- ; 3 = автоматически убирать с экрана и показывать поверх всех окон
Просмотров: 858 | Комментариев: 0
Внимание! Статья опубликована больше года назад, информация могла устареть!
Комментарии
Отзывы посетителей сайта о статье
Комментариeв нет
Добавить комментарий
Заполните форму для добавления комментария