Вот такая проблема: Нужно найти клиентские координаты окна. Вроде бы ни чего сложного, но не получается... Делал так:
| Код | Function myGetClientCoord(hWindow:Hwnd):Trect; var WinRect,WinRectGlob:Trect; hParent,hParentTest:Hwnd; begin hParent:=hWindow; hParent := GetAncestor(hParent,GA_PARENT); //Глобальные координаты род окна GetWindowRect(hParent, WinRect); //Глобальные координаты дочернего окна GetWindowRect(hWindow, WinRectGlob);
// Должны получиться клиентские Result.Left:=WinRectGlob.Left-WinRect.Left; Result.Top:=WinRectGlob.Top-WinRect.Top; Result.Right:=WinRect.Right-WinRectGlob.Right; Result.Bottom := WinRect.Bottom-WinRectGlob.Bottom; end;
|
Такое ощущение, как будто считается бордер, а он не должен считаться.... или что нить другое. |