![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
найти пустые ячейки в третьем столбце ListView по всем строкам [D7]
Garacio © (2007-01-16 20:30:00)Мне необходимо найти пустые ячейки в третьем столбце ListView по всем строкам и заполнить их 'Не найдено!'. Пытаюсь так:
for i:=0 to ListView1.Items.Count-1 do
begin
if (ListView1.Items[i].SubItems.Count > 1)
and (ListView1.Items[i].SubItems[2].Text = '') then
ListView1.Items[i].SubItems.add('Не найдено!');
end;
Но пустые ячейки продолжают оставаться пустыми!
Помогите исправить!
Сергей М. (2007-01-17 11:11:00) [1]
> 2-го столбца
ListView.Items[i].SubItems[ 0]
Garacio (2007-01-17 09:49:00) [2]Тогда, может кто-нибудь поможет организовать проверку:
Если в какой-то ячейке 2-го столбца в ListView (состоящего из 3-х столбцов) нет значения (пустая ячейка), то заполнить её 'Нет файлов!'
P.S.</b 1-й столбец ListView весь заполнен, 3-й полностью пустой, 2-й заполнены только некоторые ячейки
MBo (2007-01-17 09:14:00) [3]SubItems[2] - это третийэлемент в списке, так что проверка SubItems.Count > 1 слишком слабая
Garacio (2007-01-17 08:03:00) [4]Нет, ну серьёзно:
При любых подобных попытках, будь то:
ListView1.Items[i].SubItems[2] := 'Нет файлов!'; или
ListView1.Items[i].SubItems[1] := 'Нет файлов!'; или
if ListView1.Items[i].SubItems[2] = '' then
при компиляции ругается
...
begin
Application.Initialize;
Application.CreateForm(TFormMain, FormMain);
Application.Run;
end. //<- вот тут
Delphi при этом ничего не пишет в отчёте. А вот в самом приложении выскакивает: "List index out of bounds(2)"
AFKer (2007-01-16 23:12:00) [5]да без проблем!
Garacio (2007-01-16 21:46:00) [6]
> ListView1.Items[i].SubItems[2]:='Не найдено!';
Нет, не помогает! К тому-же возьмите ListView и попробуйте таким способои заполнить его :-)
AFKer (2007-01-16 20:49:00) [7]только Subitems[0..N] должен быть уже создан..
AFKer (2007-01-16 20:46:00) [8]for i:=0 to ListView1.Items.Count - 1 do
begin
if (ListView1.Items[i].SubItems[2] > '') then
ListView1.Items[i].SubItems[2]:='Не найдено!';
end;
может так..
Аноним (2007-01-16 20:43:00) [9]then
ListView1.Items[i].SubItems[2]:='Не найдено!';
end;