Здравствуйте, 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());