Как я могу добавить дополнительные данные для каждого существующего элемента в `TListView`?
Вопрос
Я работаю с TListView
и я успешно заполнил заголовок каждого элемента и первый подпункт.Смотрите пример ниже.
user pass working status valid
data1 pass --- ---
data2 pass2 ---- -----
-
-
-
После заполнения каждого элемента я получаю дополнительные данные для каждого элемента.Я хочу добавить эти данные для заполнения столбцов "рабочий", "статус" и "действительный" каждого элемента.Как я могу добавить эти дополнительные данные для каждого элемента?
Каждый раз, когда я пробовал, оказывалось, что данные сохраняются в новых элементах и отображаются под исходными элементами.Смотрите пример ниже.
user pass working status valid
data1 pass --- ---
data2 pass2 ---- -----
yes 2009
no
Как я могу добавить дополнительные данные для каждого существующего элемента в TListView
?
Решение
Я тоже не уверен, что понимаю вопрос.
Если вы хотите, чтобы столбцы были видны, вам нужно будет добавить столбцы в инспектор объектов.(Я думаю, вы уже делали это).
Когда вы добавляете элементы listview, ваш код будет выглядеть примерно так;
MyItem:=ListView1.Items.Add; MyItem.Caption:='data1'; for i:=0 to 2 do // this is number of desired subcolumns -1 MyItem.SubItems.Add(''); // puts blank string in each cell // then put your data in; MyItem.SubItems[0]:='pass'; MyItem.SubItems[1]:='---'; MyItem.SubItems[2]:='--' //etc
Другие советы
Как вы обновляете существующие элементы?
Это должно быть что-то вроде:
ListView1.Items[0].SubItems[1] := 'Yes';
ListView1.Items[0].SubItems[2] := '2009';
ListView1.Items[1].SubItems[1] := 'No';