2011-01-12 3 views
0

Можно ли использовать класс wxAny для хранения класса wxCheckBox или других классов на основе wxControl?Использование wxAny в качестве класса контейнера для wxControls

wxPanel *panel = new wxPanel(this, wxID_ANY); 
wxCheckBox test(panel, idMenuAbout + 1, wxT("Show title"), wxPoint(20, 20)); 
wxAny checkBox = test; 

Приведенный выше код генерирует ошибку 'wxCheckBoxBase& wxCheckBoxBase::operator=(const wxCheckBoxBase&)’ is private

спасибо.

+0

WTF ты хочешь сделать? wxAny - это не какой-то элемент управления графическим интерфейсом. Это wx-версия boost :: any –

ответ

0

Проблема не с wxAny, но с тем, что wxCheckBoxBase производится без копируемыми:

WX/checkbox.h

class WXDLLEXPORT wxCheckBoxBase : public wxControl 

protected: 

    DECLARE_NO_COPY_CLASS(wxCheckBoxBase) 
} 

WX/defs.h

/* --------------------------------------------------------------------------- */ 
/* macro to define a class without copy ctor nor assignment operator */ 
/* --------------------------------------------------------------------------- */ 

#define DECLARE_NO_COPY_CLASS(classname)  \ 
private:         \ 
    classname(const classname&);   \ 
    classname& operator=(const classname&); 
Смежные вопросы