Re: WTL - DDX & ComboBox
От: Ilya81  
Дата: 16.03.07 16:57
Оценка:
У меня похожий вопрос, но я не нашёл ответа нигде. В общем (если моё сообщение попало по адресу, в интерфейсе я запутался) доделываю я программу на C++, где всё написано практически на системном уровне, диалоговое окно сделано в виде ресурса. Обмен происходит DDX-функциями в DoDataExchange. Там есть поля ввода и флажки (checkbox), нужно добавить раскрывающийся список (combobox). И для него я не могу подобрать DDX-функцию. Во-первых поле Data в конструкторе ничего не таёт, хоть по кнопке TestDialog я в списке элементы вижу, при выполнении их нет. Я пробовал
DDX_CBString(pDX, IDC_COMBO1, cmbx);
DDX_CBIndex(pDX, IDC_COMBO1, m_ColorFormat);


тогда он cmbx вписывает только в само поле, а раскрывающийся список заполнить никак не удаётся, ни с точками с запятыми, ни с разрывами строки. Вторая функция считывает непонятно что. Есть ещё DDX_FieldCBString, но тут нужен CRecordset, что заполнить просто набором строк я тоже не нашёл как.
В общем, сейчас применяю обходной вариант
CListBox* pList = (CListBox*)GetDlgItem(IDC_LIST2);
    pList->AddString("15 бит");

и т. п., к тому же именно listbox, ибо для combobox и это не работает. Но хотелось б сделать интерфейс с combobox и делать нормально через DDX, а не такими обходными путями.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.