Здравствуйте, 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);
}