Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Custom Control. Траблы

249
29 июня 2006 года
DissDoc
639 / / 01.10.2004
Олл, у меня такая вот проблема. Есть диалог. запускаю вот так
 
Код:
SetResources(); // установка ресов
CMyDlg dlg;
dlg.DoModal();
ResetResources();

Все работает нормально. А как только добавляю Custom Control на диалог, так диалог не запускается! В чем ошибка7???
80K
27 мая 2012 года
Bludodey
9 / / 17.05.2012
Столкнулся с такой же проблемой. В данный момент разбираюсь в чем дело.
80K
27 мая 2012 года
Bludodey
9 / / 17.05.2012
Решил. Оказывается в класс диалогового окна необходимо добавить функцию.


Код:
class Dialog: public CDialog {
    public:
   
    Dialog(CWnd *pParent = NULL);
   
    CGridCtrl grid;

    protected:
        virtual BOOL OnInitDialog(void);
        virtual void DoDataExchange(CDataExchange* pDX);

    private:
    DECLARE_MESSAGE_MAP()
    };
 



void Dialog::DoDataExchange(CDataExchange* pDX)
{
    CDialog::DoDataExchange(pDX);
    //{{AFX_DATA_MAP(CGridCtrlDemoDlg)
   
    DDX_Control(pDX, IDC_GRID, grid);             // associate the grid window with a C++ object
    //}}AFX_DATA_MAP
}
Теперь custom control виден на диалоге.
А не появлялось диалоговое окно потому ,что не был создан объект класса название которое вписано в custom control .

У меня custom control привязан к классу CGridCtrl. И объект я то не создавал то создавал где попало. Когда создание объекта сделал в классе Диалога
 
Код:
class Dialog: public CDialog {
    public:
   
    Dialog(CWnd *pParent = NULL);
   
    CGridCtrl grid;
то все заработало.
80K
27 мая 2012 года
Bludodey
9 / / 17.05.2012
спустя 6 лет мы нашли в чем была причина!!!! Уррааааа товарищи.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог