Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Visual C++/MFC/WTL > Помогите разобраться с List Control |
Автор: Romeros 5.9.2007, 13:57 |
Как передать строку в List Control? У меня есть List Control, cтроку ввожу в Edit Control! Введенная строка должна появиться в первом столбце в первой строчке после нажатия на кнопку В функции BOOL CTestDlg::OnInitDialog() \\устанавливаю стили DWORD dwExStyle = LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_TWOCLICKACTIVATE; m_ListCtrl.SetExtendedStyle(m_ListCtrl.GetExtendedStyle() | dwExStyle); \\добавляю колонки m_ListCtrl.InsertColumn(0, _T("Номер"),LVCFMT_LEFT,60); m_ListCtrl.InsertColumn(1, _T("Пароль"),LVCFMT_LEFT,98); с этим все ОК ____________________________________________________________________________________________________ А вот КУДА добавить код чтобы в моем List Control'e появлялись строки введенные мной по нажатию на кнопку не знаю! m_ListCtrl.InsertItem() - вроде должен это делать....но точно не знаю как пользоваться этой функцией! Может нужно создать класс для List Control? или еще что то....вобщем кто знает напишите пожалуйста что как и куда!!! Большая прозьба не ссылайтесь на MSDN или Codeproject везде был... |
Автор: ppoger 5.9.2007, 14:37 |
ну к примеру создаешь переменную типа контрол в Класс визарде (если на 6 вижле) переменная к примеру m_list; Тада вставить элемент в первый слотбец так: m_list.InsertItem(m_list.GetItemCount(),"текст",0); для вставки в другие столбцы юзай SetItemText. пс. функции в мсдн вбей и посмотри на параметры и примеры, там все понятно |
Автор: NiJazz 5.9.2007, 14:43 | ||
|
Автор: Romeros 5.9.2007, 15:00 |
В функции нажатия на кнопку пишу: m_ListCtrl.InsertItem(m_ListCtrl.GetItemCount(),_T("текст"), 0); В List Control добавляется строка но она ПУСТАЯ что делать???? |
Автор: ppoger 5.9.2007, 16:02 |
наверна убрать _T. пс. объясните кто нить, для чего ето нада) |
Автор: Greeen 5.9.2007, 17:09 |
в зависимости от настроек проекта _T разворачивается либо в L (для юникод) либо в ничего (для Ansi строк) |
Автор: Romeros 5.9.2007, 17:10 |
Убрать _T() ничего не даст, в VS 2005 без нее не работает) это пока все что я знаю! Неужели никто не знает как добавить эти строки!!!!! ![]() |
Автор: ppoger 5.9.2007, 17:13 |
у мну все работает без нее. в настройках использую use multi-character bytes. и любые строки просто в кавычках пишу. |
Автор: Greeen 5.9.2007, 17:18 | ||
Пример:
|
Автор: Romeros 6.9.2007, 18:47 | ||||
Делаю все так как пишите выдает вот такую ошибку: Microsoft Visual C++ Debug Library Debug Assertion Failed! Program:... File: f:\sp\vctools\vc7libs\ship\atlmfc\include\afxcmc.ini Line 140 For information on how your program can cause an assertion faiure, see the Visual C++ documentation on asserts. Помогите разобраться!!! |
Автор: Greeen 6.9.2007, 19:23 |
То что написано в комментарии тоже сделал? Естественно, переменную типа CListCtrl объявляй либо в классе диалога, либо как глобальную (не рекомендуется) |