Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Как определить позицию чужого окна БЕЗ РАМКИ (рабочую область)?   Найти похожие ветки 

 
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 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.271 c
15-1344857976
БарЛог
2012-08-13 15:39
2013.03.22
А как такая программа будет называться?


15-1343414133
KilkennyCat
2012-07-27 22:35
2013.03.22
Чем бы учитывать свои радиодетальки?


15-1352705908
0xDEADBEEF
2012-11-12 11:38
2013.03.22
выбор субд


15-1352291019
Inovet
2012-11-07 16:23
2013.03.22
Скончаося Кругляков Эдуард Павлович


3-1277464409
12
2010-06-25 15:13
2013.03.22
Запрос на получение всех конечных узлов дерева