Re: resizeadble CDialogBar
От: random_name  
Дата: 15.10.04 14:35
Оценка:
Здравствуйте, Vis, Вы писали:

Vis>Возникла неоходимость сделать CDialogBar изменяемого размера.


Vis>Стандартная реализация CDialogBar предполагает, что DialogBar имеет размеры даилога, заданного в ремурсах.

Vis>Обработка сообщения WM_SIZE результатов не принесла.

Vis>Как решить мою проблему, не прибегая к множеству шаблонов диалога?


Ну блин не знаю как там с множеством шаблонов, но если в свойствах твоего диалога -> в поле Border -> поставить resizing, то он ресайзится будет точно, но тебе наверняка необходим пропорциональный resize и этого недостаточно, то тогда в OnSize чё то типа такого:

HWND hWndChild = ::GetDlgItem(m_hWnd, IDC_PICTURE_PREVIEW);
while (hWndChild != NULL)
{
::GetWindowRect(hWndChild, ElementRect);
.................
// здесь типа вычисление новых координат заресайзенного объекта
.................
::MoveWindow(hWndChild, /*здесь новые координаты*/, TRUE);
hWndChild = ::GetNextWindow(hWndChild, GW_HWNDNEXT);
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.