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

Про потоки и выходы из них   Найти похожие ветки 

← →
Коля ©   (2002-07-08 00:54) [0]

Помнится на уроках паскаля учитель что GoTo пользоватся плохо, это портит приграмму ну а если использовать эту функцию для выхода из цыкла, то будет еще хуже. Да и exit использовать не велят в цыклах.. Напрашивается вопрос, а как тогда правильно прервать цикл или перепрыгуть его часть???
Вот код:
for i:= 0 to FileListbox1.Items.Count -1 do
begin
if FileListbox1.Selected[i] then
begin
//проверяю, есть ли такой файл в ListBox"e
for ii:= 0 to Listbox1.Items.Count -1 do
begin
if Listbox1.Items[ii] = FileListbox1.Selected[i] then
exit; //вот этот екзит и хочется заменит на что- нибудь другое
Listbox1.Items.Add(FileListbox1.Items[i]);
exit;
end;


Тут MultiSelect = False; поэтому если один выделенный файл будут найдет, необходимо прекратить поток.

А тут дело немного усложняется MultiSelect = True; поэтому если файл найден в ListBox"e то поток не прекращять а переходить к следующему..

for i:= 0 to FileListbox1.Items.Count -1 do
begin
if FileListbox1.Selected[i] then
begin
//проверяю, есть ли такой файл в ListBox"e
for ii:= 0 to Listbox1.Items.Count -1 do
begin
if Listbox1.Items[ii] = FileListbox1.Selected[i] then
goto nem;
Listbox1.Items.Add(FileListbox1.Items[i]);
end;
nem:
end;


Пожалуйста объясните что к чему буду очень благодарен!


← →
777 ©   (2002-07-08 01:10) [1]

1) break

2)
...
var Found:boolean;
...
found:=false;
for ii:= 0 to Listbox1.Items.Count -1 do
begin
if (Listbox1.Items[ii] <> FileListbox1.Selected[i])and(found=false)then Listbox1.Items.Add(FileListbox1.Items[i])else
found:=true;
end;



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

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



Память: 0.45 MB
Время: 0.008 c
3-57998
DFort
2002-06-27 11:14
2002.07.18
Grid


1-58222
Goblinus
2002-07-07 15:50
2002.07.18
Шрифты


1-58127
ёё
2002-07-08 21:16
2002.07.18
Вопрос по TStringList .


3-57959
Андрусь
2002-06-25 11:27
2002.07.18
Сохранение настроек в базе


1-58207
Socol
2002-07-05 03:30
2002.07.18
Удаление символов в тексте)))




   Наверх