Re[15]: Отсутствие перерисовки в CTreeView. MFC bug?
От: Carc Россия http://www.amlpages.com/home.php
Дата: 27.11.08 13:13
Оценка:
В-о-о-о! Отлично, уже как-то понятнее!
void CMainFrame::OnTreeMatrix() 
{
       // А НАФИГА ТУТ PostMessage?
       // по моему вполне сойдет и SendMessage - PostMessage асинхронная, а зачем нам тут асинхронность? Создали
       // дерево, и понеслась заполнять. Так?
    aView->PostMessage(WM_MATRIXVIEW_SELECT_MSG, 0, selectedId);
    tree1->PostMessage(WM_MATRIXVIEW_SELECT_MSG, 0, selectedId);
    tree2->PostMessage(WM_MATRIXVIEW_SELECT_MSG, 0, selectedId);
}

2) Ну и судя по коду создания, привязка там плотная, т.е. создаются и конкретные виды и иже с ними. Тогда почему бы напрямую безо всяких Send(Post)Message не начать заполнять дерево сразу из функции OnTreeMatrix? А заполнив его уже и показывать документ (InitialUpdateFrame+SetActiveView), так например!?! Сдается мне это выход... Создание видов, документов — породит массу событий, а тут какие-то PostMessage — а когда они всплывует в tree1, tree2 еще бабка надвое сказала...
Aml Pages Home
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.