Обновить диалог

Тема в разделе "MS Visual C++", создана пользователем eastern, 13 мар 2008.

  1. eastern

    eastern Гость

    Всем привет!
    Обьясните, пожалуйста, кто знает, как обновить данные в CEdit. Смысл такой, нажимаю кнопку и пошла обработка информации. По мере обработки в окне редактирования меняется информация. При использовании UpdateData(FALSE) появляется только последние данные. Код такой:
    Код (Text):
    void CSentDlg::OnBnClickedButtonSent()
    {
    обработка данных
    ...
    strResult = данные
    UpdateData(FALSE);
    обработка данных
    ...
    strResult = данные
    UpdateData(FALSE);

    }
    В принципе это касается не только CEdit. В общем нужно видить промежуточные результаты, а не только конечный.
     
  2. tdr

    tdr Гость

    Видимо, у тебя данные обрабатываются достаточно быстро, для того чтобы ты не видел смены
    Сделай вместо CEdit CListBox и выводи все данные туда
     
  3. eastern

    eastern Гость

    В том-то и дело, что времени хватает чтобы увидить изменения. Наблюдаю такой эфект, в окне редактирования текста не вижу, но полосы прокрутки меняют свой размер, как будто там есть текст.
     
  4. Hroft

    Hroft Гость

    Поподробнее код напиши. Может у тебя в другом чём-то проблема? Можешь мне в личку кинуть
     
  5. gamecreator

    gamecreator Гость

    попробуй использовать SetWindowText и т.п.
     
  6. eastern

    eastern Гость

    Всем спасибо. На другом форуме мне обьяснили. Потому что пока обрабатывается одно сообщение (в данном случае WM_COMMAND), другое сообщение стоит в очереди, и не обрабатывается (в данном случае WM_PAINT для Editа)
     
  7. Hroft

    Hroft Гость

    Так у тебя то WM_PAINT для эдита обрабатывается, только не так как надо. Ну если всё заработало, тогда ладно.
     
Загрузка...

Поделиться этой страницей