wxFileDialog открыть в MyApp :: OnInit () ошибка - PullRequest
0 голосов
/ 25 февраля 2012

Я пытаюсь открыть wxFileDialog в MyApp :: OnInit (), но в результате я получаю сообщение об ошибке, в котором говорится: "нет соответствующей функции для вызова wxFileDialog :: wxFileDialog (MyApp * const, const char [ 12], const wxChar * &, const wxChar * &, const char [6],) ".

MyApp::OnInit()
{
    wxFileDialog dialog2(this, _T("open a file"), wxEmptyString, wxEmptyString, _T("*.csv"), wxFD_OPEN);
    dialog2.ShowModal();
    ... open the file and then do something ...
}

Идея состоит в том, чтобы позволить пользователю открыть файл конфигурации до запуска программы. Кто-нибудь может дать совет по этой проблеме?

Спасибо.

Ответы [ 2 ]

1 голос
/ 25 февраля 2012

Проблема - ваш первый параметр, родительский диалог, он ожидает wxWindow*, но вы передаете MyApp*. Поскольку у вас нет родителя, просто передайте NULL.

wxFileDialog dialog2(NULL, _T("open a file"), wxEmptyString, wxEmptyString, _T("*.csv"), wxFD_OPEN);
0 голосов
/ 25 февраля 2012

Согласно документации wxWidgets , макрос _T() отличается от _().Итак, попробуйте просто с _ при передаче аргументов.

wxFileDialog dialog2(this, 
                     _("open a file"), 
                     wxEmptyString,
                     wxEmptyString,
                     _("*.csv"), 
                     wxFD_OPEN);
...