Форум: "WinAPI";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизКак определить позицию чужого окна БЕЗ РАМКИ (рабочую область)? Найти похожие ветки
← →
kalexi (2010-01-25 20:17) [0]Сабж. Т.е допустим
GetWindowRect(hWindow, r);
дает позицию 100;100 (top;left). Тогда GetPixel(DC, top, left) определит цвет не рабочей области формы а Border"а. Кам можно определить положение рабочей области формы?
← →
kalexi (2010-01-25 20:43) [1]GetClientRect - top и left = 0
← →
Игорь Шевченко © (2010-01-25 22:49) [2]
> GetClientRect - top и left = 0
Было бы странно обратное.procedure TForm1.Button1Click(Sender: TObject);
var
Rect: TRect;
WinRect: TRect;
begin
Rect := ClientRect;
GetWindowRect (Handle, WinRect);
MapWindowPoints(Handle, HWND_DESKTOP, Rect, 2);
OffsetRect(Rect, -WinRect.Left, -WinRect.Top);
ShowRect(Rect);
end;
← →
Игорь Шевченко © (2010-01-26 02:24) [3]Плохо прочитал вопрос.
Для того, чтобы найти абсолютные координаты клиентской части окна hWnd по его известному ClientRect (0-0, clientwidth-clientheight), достаточно одного вызова MapWindowPoints (hWnd, HWND_DESKTOP, ClientRect, 2);
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.069 c