#1 15.02.09 12:04
[VC++]Проблема с Combo Box
Добрый день!
Подскажите, пожалуйста! Создал диалог и поместил на него Combo Box, пытаюсь теперь добавить в него строки. Делаю так:
Код: c++:
void CMainFrame::On32771() { CustomerData dlg; CComboBox *CBox = ((CComboBox *)dlg.GetDlgItem(IDC_COMBO1)); CBox->AddString(L"test"); INT_PTR Result = dlg.DoModal(); }
В результате вылетает исключение такого вида:
http://hostel.nstu.ru/uploaded/gallery/ … 677580.png
Исправлено Дональдак (15.02.09 12:06)
Offline
#5 16.02.09 16:16
Re: [VC++]Проблема с Combo Box
Спасибо! С этим разобрался, поместив работу с контролами в OnInitDialog().
Действительно, CustomerData dlg - это всего лишь экземпляр класса и в нем еще нет ничего.
Но появилась другая проблема:
Код: c++:
while(rset->next()) { string StreetName = rset->getString(1); CString tmp = (CString)StreetName.c_str(); CBox2->AddString(tmp); }
Все работает отлично пока в строке нет пробелов и падает, например, на такой строчке
StreetName = 'Бориса Богаткова'.
Как мне добиться корректной работы со строкой, где есть пробелы?
Проблема скорее всего в считывании строки с пробелами в string, т.к.
tmp.Replace(' ', '_');
тоже не помогает.
getString - это
virtual std::string oracle::occi::ResultSet::getString(unsigned int colIndex) = 0;
Стандартная функция из occi, которая должна возвращать строку считанную из таблицы из соответствующей ячейки.
Таблица получается в результате выполнения запроса, где как раз в первой колонке находятся нужные мне строчки. В базе они лежат в формате varchar(60).
Исправлено Дональдак (16.02.09 16:16)
Offline

