Вниз
Скачать: CL | DM;

Удаление строк из ListBox   Найти похожие ветки 

 
P0tia ©   (2003-08-27 23:29) [0]

Есть код. Который сначало пересылает в listbox все значение полей, потом стирает дубли и еще он должен стирать строки с одиночными записими, но последнее почемуто не работает, помогите.


Datamodule2.Table1.First;
i:=0;
j:=0;
for i:=0 to DataModule2.Table1.RecordCount-1 do begin
ListBox4.Items.Add(Datamodule2.Table1.Fields[5].AsString);
Datamodule2.Table1.Next;
end;
SL := TStringList.Create;
SL.Duplicates := dupIgnore;
SL.Sorted := True;
i:=0;
try
for i := 0 to ListBox4.Count - 1 do
SL.Add(ListBox4.Items[i]);
ListBox4.Items := SL
finally
SL.Free;
end;

// Загруска данных в Excel
Excel := CreateOleObject("Excel.Application");
Excel.Visible:=True;
Excel.WorkBooks.Add;
i:=0;
DataModule2.Table1.Filtered := false;
filt := Datamodule2.Table1.Filter;
For i:=0 to ListBox4.Count-1 do begin
DataModule2.Table1.Filter := ""+filt+" and Primechanie = """+ListBox4.Items[i]+"""";
DataModule2.Table1.Filtered := true;
if DataModule2.Table1.RecordCount = 1 then
begin
ListBox4.ItemIndex := i;
listBox4.DeleteSelected;
edit41.Text := ListBox4.Items[i];
end;
end;


 
P0tia ©   (2003-08-27 23:37) [1]

И еще как можно повторить FOR с темже значением щетчика.


 
Guerrillero ©   (2003-08-27 23:59) [2]

Ошибка какая?
Скорее всего в этом For i:=0 to ListBox4.Count-1 do
Попробуй цикл с конца начинать


 
Кщд   (2003-08-28 06:10) [3]

Guirrillero
Конечно там. Автор просто не понимает, что удаляя элемент, он сокращает количество элементов списка.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
7-58928
Nick Denry
2003-07-06 20:09
2003.09.18
Как моей программе узнать, что пользователь открыл CD-Room в 9x?


1-58759
Igor__
2003-09-02 19:23
2003.09.18
ImageList глючит


7-58948
Snake1977
2003-07-04 16:56
2003.09.18
Переменные окружения


7-58944
Alexkav
2003-07-07 12:47
2003.09.18
Создание службы


14-58864
zzet
2003-08-30 11:47
2003.09.18
Помогите прибить вирусяку..




   Наверх