Re: Диалог в Диалоге
От: Sashaka Россия  
Дата: 05.03.08 08:34
Оценка:
Y>Единственно что-то похожее на правду получилась при
Y>class CDialogA::public CDialog{
Y>....
Y>...

Y>CDialog m_pChildDlg;

Y>}

Y>CDialogA::OnInitDialog(){


Y>CDialog::OnInitDialog()


Y>if(uiTemplate){

Y> m_pChildDlg.Create(uiTemplate, this);
Y> m_pChildDlg.ShowWindow(SW_SHOW);
Y>}

Y>.......................

Y>}

так и надо.

Y>Но при таком способе сообщения от контролов (IDD_B_DIALOG) не доходят до DDX от CDialogB. Естественно.


в DDX прописанный в CDialogB все должно приходить

Y>Вопрос: каким же образом мне заставить сообщения обрабатываться


Y>Мне кажется что я не знаю техники реализации таких окон. Может подскажите? Или ссылку какую кините.


Y>Заранее спасибо.


так и делать, все долно работать, у меня есть проект где все работает, там есть главный диалог и куча дочерних, переключаемых (типа таб контрола только без него),

так вот дочерние создаются именно так:


    for (int i=0; i<DLG_COUNT; i++)
    {
        m_pTab[i]=new CTabDlg(IDD_DIALOG1+i);
        m_pTab[i]->Create(IDD_DIALOG1+i);
        m_pTab[i]->MoveWindow(TAB_POS_X,TAB_POS_Y,m_pTab[i]->m_nWidth,m_pTab[i]->m_nHeight,true);
    }

    m_pTab[m_nSel]->ShowWindow(SW_SHOW);


ты UpdateData может не вызываешь _для_ CDialogB ?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.