Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.12;
Скачать: CL | DM;

Вниз

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

 
kyn66 ©   (2006-09-29 12:24) [0]

Пробегая по всем итемам, выискиваю ненужные и хочу удалить. Делаю RepFileListBox.DeleteSelected. Но оно не срабатывает, что не так?


 
stone ©   (2006-09-29 12:26) [1]

код в студию


 
kyn66 ©   (2006-09-29 12:38) [2]


procedure TMainFrm.FindFile;
Var
 i : Integer;
begin
RepFileListBox.Mask := "???_info.rpt";
RepFileListBox.Directory := RemoveBackSlash(ImportPath);
RepFileListBox.Update;
for i := 0 to Pred(RepFileListBox.Count) do
 if not RupsInParam(RepFileListBox.Directory, RepFileListBox.Items[i]) then
  begin
//     RepFileListBox.Selected[RepFileListBox.Itemindex] := True; - ???
    RepFileListBox.DeleteSelected;
  end;
RepFileListBox.Update;  
LoadReports;
end;


 
stone ©   (2006-09-29 12:43) [3]

for i := RepFileListBox.Items.Count-1 downto 0 do
if not RupsInParam(RepFileListBox.Directory, RepFileListBox.Items[i]) then
   RepFileListBox.Items.Delete(i);


 
kyn66 ©   (2006-09-29 13:01) [4]

Да, работает, спасибо !!! в чем тока разница оформления цикла?
Мой выдает ошибку, предложенный - работает на ура !


for i := 0 to Pred(RepFileListBox.Count) do


и


for i := RepFileListBox.Items.Count-1 downto 0 do


 
Ketmar ©   (2006-09-29 13:11) [5]

>[4] kyn66(c) 29-Sep-2006, 13:01
второй быстрее. %-)


 
Ketmar ©   (2006-09-29 13:11) [6]

а вообще -- нельзя менять количество элементов в списке, если используешь for. только while/repeat в таких случаях.


 
Dmitrij_K   (2006-09-29 13:11) [7]


> Мой выдает ошибку

Включи мозг.



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

Текущий архив: 2006.11.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.083 c
2-1161688418
Crazybeaver
2006-10-24 15:13
2006.11.12
Группировка по датам


1-1159539430
Art_infinity
2006-09-29 18:17
2006.11.12
организация доступа к портам...


15-1161927720
clickmaker
2006-10-27 09:42
2006.11.12
Пятничные загадки


2-1161141970
kidm
2006-10-18 07:26
2006.11.12
Помогите решить задачку


2-1161894494
!aLeXa!
2006-10-27 00:28
2006.11.12
Как сделать "критический" dialog?