2016-12-20 2 views
1

У меня проблема с WxWidgets версии 3.0.2. В настоящее время я пытаюсь получить значение «ChecklistBox» с номером индекса 0.WxWidgets CheckListBox получение значения вопроса

Кажется, что я не могу получить его, чтобы заполнить строковую переменную из C++.

Я пробовал много вещей, таких как .ToString(), .mb_str() (строка) и т.д. перем

код, я использую, чтобы получить значение, которое я полагаю, работает, но возвращается результат не «строка», поэтому я не могу использовать его в своем коде на C++ ... (по крайней мере, еще нет).

Код, который я использую для получения значения индексного номера 0, не вызывает ошибок:

CheckListBox = new wxCheckListBox(this, CHECKBOX1, wxDefaultPosition, wxSize(208,63), 0, 0, 0, wxDefaultValidator, _T("CHECKBOX1")); 
CheckListBox->GetItem(0); //Seems to work (at least gives no errors) 

String Test = CheckListBox->GetItem(0); //Fails 

Возвращена ошибка: преобразование из «wxOwnerDrawn 'для нескалярного типа станда :: __ cxx11 :: строки {аки станда :: __ cxx11 :: basic_string} | *

Простого теста, такой как следующие работы, так как я вижу 'Test' добавлен в CheckListBox:

CheckListbox->Check(CheckListBox->Append("Test")); 

Спасибо за любой совет!

+0

Вы пробовали .mb_str(). Data() – ravenspoint

ответ

0

Я не вижу GetItem(idx) в CheckListBox.

Возможно, вы ищете virtual wxString GetString (unsigned int n) const, который наследуется от wxListBox.

+0

Спасибо, GetString был способ пойти –

+0

Упростить и/или принять ответ - это обычный способ поблагодарить кого-то, кто вам помог. – John3136

+0

Конечно, но вам нужно как минимум 15 репутации john –

Смежные вопросы