![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать высоту системного трея в пикселях? [D6, 2000, XP]
Mishenka © (2007-01-15 11:31:00)Хочу вывести сообщение над треем ввиде формы. Как узнать высоту панели задач и системного трея в пикселях?
Elen (2007-01-15 12:33:00) [1]
> clickmaker, Игорь Шевченко
Ладно согласна. Тогда получаем область трея так:
h:=FindWindow('Shell_TrayWnd','');
h:=FindWindowEx(h,0,'TrayNotifyWnd','');
GetWindowRect(h,rt);
caption:=inttostr(rt.Bottom-rt.Top);
clickmaker (2007-01-15 12:23:00) [2]если уж на то пошло, то панелька эта может прилипать не только к низу и верху... поэтому, что считать высотой?
в общем случае можно проверить uEdge в Appbar
Elen (2007-01-15 12:14:00) [3]
> Ты опять вернулось ? А зря..
Во-первых почему вернул ось?
Во-вторых - вижу соскучились :)
Ну и в-третьих - а чем [1] плохо, а?
Игорь Шевченко (2007-01-15 12:09:00) [4]
> Как узнать высоту панели задач и системного трея в пикселях?
uses
Shellapi;
procedure TfMain.miReportsClick(Sender: TObject);
var Appbar : TAppbarData;
begin
Appbar.cbSize := SizeOf(AppBar);
ShAppbarMessage(ABM_GETTASKBARPOS, AppBar);
ShowMessageFmt('Высота таскбара = %d', [Appbar.rc.bottom - Appbar.rc.top]);
end;
Elen © (15.01.07 11:59) [1]
Ты опять вернулось ? А зря..
Elen (2007-01-15 11:59:00) [5]
> Как узнать высоту панели задач
Кажись так :
var h:hwnd;rt:trect;
begin
h:=FindWindow('Shell_TrayWnd','');
GetWindowRect(h,rt);
caption:=inttostr(rt.Bottom-rt.Top);
end;