![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Доброго времени суток.
Вопрос по listview. Подскажите, пожалуйста, как сравнить два listview. В memo1 выгрузить те записи из listview1, которых нет в listview2. Делаю так: Код:
var i, j:integer; begin for i=0 to i<listview1.items.count do begin for j=0 to j<listview2.items.count do begin if listview1.items[i].caption = listview2.items[j].caption memo1.lines.add(listview1.items[i].caption); end; end; end; так работает, но в memo1 пишутся только те, которые есть и в listview1 и в listview2. Ставлю вместо "=" знак "<>" в memo1 пишется ерунда. Что нужно, чтобы в memo1 писались только те, которых нет в listview2? В обоих listview1 и listview2 только одна колонка. Спасибо большое. Помогите пожалуйста. Последний раз редактировалось kaktuss100, 16.05.2015 в 09:52. |
|
#2
|
||||
|
||||
|
Ну вот например так. Писал "в лоб"
Код:
var
i, j:integer;
f: boolean; //флаг наличия
begin
for i:=0 to listview1.items.count-1 do begin
f:=false;
for j:=0 to listview2.items.count-1 do begin
if listview1.items[i].caption = listview2.items[j].caption then begin
f:=true; break;
end;
end;
if not f then memo1.lines.add(listview1.items[i].caption);
end;
end; |
| Этот пользователь сказал Спасибо SCrat.ORS за это полезное сообщение: | ||
kaktuss100 (16.05.2015)
| ||
|
#3
|
|||
|
|||
|
Спасибо большое. Буду пробовать.
|