Как реализовать?
От: alexsoff Россия  
Дата: 13.11.05 19:36
Оценка:
Исправлено форматирование текста. — SchweinDeBurg

Имеется некий класс порожденный от CWnd. Мне нужно написать функцию которая не возвращала управление до завершения каких-нибудь действий с содержимым окна.
Например

CMyWnd wd;//создаем объект
wd.Create(...);//Создаем окно
////////
....
////////
if(wd.FunctDo())  /*здесь программа должна перейти в режим 
ожидания результата от окна wd.(что-то типа CDialog::DoModal) */
{
///
};

Помогите с идеей как реализовать данную функцию(FunctDo())
Заранее благодарю...
Re: Как реализовать?
От: TheThief Россия  
Дата: 13.11.05 21:03
Оценка:
Здравствуйте, alexsoff, Вы писали:

A>////////

A>if(wd.FunctDo()) /*здесь программа должна перейти в режим
A>ожидания результата от окна wd.(что-то типа CDialog::DoModal) */


Как вариант FuncDo() внутри может использовать некий объект синхронизации в связке с CSingleLock.

Вот тока чем DoModal() не устраивает?
[от модератора]
От: SchweinDeBurg Россия https://zarezky.spb.ru/
Дата: 14.11.05 10:26
Оценка:
Убедительная просьба — использовать коды форматирования при вставке текстов программ.
[ posted via RSDN@Home 1.1.4 stable SR1 r568, accompanied by Machine Men — Daytime Theatre ]
- Искренне ваш, Поросенок Пафнутий
Re[2]: Как реализовать?
От: alexsoff Россия  
Дата: 14.11.05 17:16
Оценка:
Здравствуйте, TheThief, Вы писали:

TT>Вот тока чем DoModal() не устраивает?

Я же говорил класс наследуется от CWnd.
Уфф! нашел сам!!! А решение оказалось простым:

int CMyWnd::MyFunct {
    /*
    код
    */
   RunModalLoop();// И ничего кроме!!!!


}

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