Тип 'wxMenuBar' должен реализовывать унаследованный чистый виртуальный метод 'wxMenuBarBase :: GetLabelTop' - PullRequest
1 голос
/ 06 января 2012

Я установил Eclipse и собрал wxWidgets с помощью компилятора MinGW, используя следующие учебные пособия:

http://max.berger.name/howto/wxWidgets/wxWidgets_Eclipse.jsp

Когда я пытаюсь запустить программу wx hello world, она компилирует и собирает программу, и она действительно работает. Но Затмение дает мне ошибку:

Тип 'wxMenuBar' должен реализовывать унаследованный чистый виртуальный метод 'WxMenuBarBase :: GetLabelTop'

в строке:

wxMenuBar *menuBar = new wxMenuBar();

Мое окружение слишком требовательно? Или как я могу реализовать чисто виртуальный метод?

1 Ответ

1 голос
/ 06 января 2012

Похоже, у вас проблема с исходным кодом wxWidgets.

Выполните поиск в папке установки wxwidgets для файла menu.cpp.Он должен содержать код что-то вроде:

wxString wxMenuBar::GetLabelTop(size_t pos) const
{
    wxCHECK_MSG( pos < GetMenuCount(), wxEmptyString,
                 wxT("invalid menu index in wxMenuBar::GetLabelTop") );

    return wxMenuItem::GetLabelFromText(m_titles[pos]);
}
...