MFC GetClientRect/GetWindowRect после MoveWindow

m_PICTURE_OD - это IDC_STATIC,

m_PICTURE_OD.MoveWindow(640 /*x*/,96/*y*/,480/*w*/,288/*h*/);
RECT myrect;
m_PICTURE_OD.GetClientRect(&myrect);

myrect.bottom = 288; myrect.top = 0; myrect.left = 0; myrect.right = 480;

RECT myrect;
m_PICTURE_OD.GetWindowRect(&myrect);

myrect.bottom = 508; myrect.top = 220; myrect.left = 802; myrect.right = 1282;

Я хотел бы восстановить myrect.left = 640, myrect.top = 96 ...

Что я могу сделать?

Спасибо,

1 ответ

Решение

Вы смешиваете координаты экрана и координаты клиента. Для перевода между ними используйте CWnd::ScreenToClient а также CWnd::ClientToScreen,

Другие вопросы по тегам