Re: WTL и PropertyPage
От: KaSA  
Дата: 28.05.04 09:32
Оценка:
Здравствуйте, eugeneugene, Вы писали:

E>Здравствуйте, уважаемые!


E>Дано:


E>
E>class CPageAccount : public CPropertyPageImpl<CPageAccount>,
E>    public CWinDataExchange<CPageAccount>
E>{
E>public:
E>    // Много вырезано за ненадобностью
E>    // Class constructor
E>    CPageAccount(ATL::_U_STRINGorID title = (LPCTSTR)NULL) :
E>        m_strTitle(title.m_lpstr)
E>    {
E>        CPropertyPageImpl<CPageAccount>((LPCTSTR)m_strTitle); А это что такое? Объявление экземпляра? :)
E>    }
E>private:
E>    CString m_strTitle;
E>};

E>// Табы добавляются динамически в цикле
E>// примерно так
E>CPageAccount *p;
E>CString strTitle;
E>strTitle.Format(IDD_PROP_PAGE_MAIL, i);
E>p = new CPageAccount((LPCTSTR)strTitle);
E>AddPage(*p);

E>


E>Проблема:

E>Не назначается заголовок таба. После выполнения конструктора CPageAccount значение m_psp.pszTitle остается равным NULL. Такое ощущение, что у CPageAccount и CPropertyPageImpl разные версии m_psp.

E>И наконец вопрос: В чем я не прав и что нужно сделать, что бы оно заработало?

E>Заранее благодарен
E>Eugene


Так надо:
CPageAccount(ATL::_U_STRINGorID title = (LPCTSTR)NULL) :
    CPropertyPageImpl<CPageAccount>(title.m_lpstr);
{
}

...


AddPage(p->Create());
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.