CDialogResize
От: AlexanderK Россия  
Дата: 25.01.02 07:16
Оценка:
К сожалению, реализованный механизм ресайзирования приводит к неприятному эффекту мигания ресайзируемых элементов управления. Особенно хорошо проявляется на listbox'е с установленными в карте DLGRESIZE_MAP флагами DLSZ_SIZE_X и DLSZ_SIZE_Y. Во избежание этого достаточно закомментировать в функции DlgResize_UpdateLayout строки pT->SetRedraw(FALSE);pT->SetRedraw(TRUE) и pT->RedrawWindow(NULL, NULL, RDW_ERASE|RDW_INVALIDATE| RDW_UPDATENOW|RDW_ALLCHILDREN).
Еще есть небольшой бажок в обработчике сообщения WM_SIZE: параметру bHandled не присваивается значение FALSE, что приводит к завершению просмотра всей карты сообщений, а это, в принципе, неверно.
Чтобы хорошо работать, надо получать от этого удовольствие! (c) Michael Schumacher

 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.