|
Пример позволяет узнать координаты расположения панели задач.
uses .., ShellApi;
var AppBarData : TAppBarData; bAlwaysOnTop: Boolean; {Поверх окон} bAutoHide : boolean; {Авт. убирать с экрана} ClRect : TRect; {Клиентские области} Rect : TRect; Edge : UInt; {Местоположение TaskBar}
procedure DetectTaskBar; begin AppBarData.hWnd := FindWindow('Shell_TrayWnd', nil); AppBarData.cbSize := sizeof(AppBarData); bAlwaysOnTop := (SHAppBarMessage(ABM_GETSTATE, AppBardata) and ABS_ALWAYSONTOP) 0; bAutoHide := (SHAppBarMessage(ABM_GETSTATE, AppBardata) and ABS_AUTOHIDE) 0; GetClientRect(AppBarData.hWnd, ClRect.rc); GetWindowRect(AppBarData.hwnd, rect); if (Rect.top > 0) Then Edge := ABE_BOTTOM else if (Rect.Bottom < Screen.Height) Then Edge := ABE_TOP else if Rect.Right < Screen.Width Then Edge := ABE_LEFT else Edge := ABE_RIGHT; end;
|