Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > не могу понять в чём проблема


Автор: Departed 22.4.2008, 15:46
Подскажите почему цикл репита является бесконечным в куске кода ниже?
        
Код

lpos1 := FindText(edit2.Text,lpos2,lpos0,[]);
lpos2 :=findtext('.',lpos1,lpos0,[]);
g:=0;
lpos3:=0;
repeat
  lpos3:=g;
  g:=findtext('.',g,lpos1,[]);
until(g=-1);



M
Alexeis
Модератор: Название темы должно отражать ее суть!

Автор: volvo877 22.4.2008, 15:49
Потому, что внутри цикла lpos1 не изменяется.

Автор: Departed 29.4.2008, 12:48
А оно по идее и не должно изменяться, это конечная точка поиска

Автор: aktuba 29.4.2008, 13:32
Текст не меняется, т.е. g никогда не станет -1. Удаляй из текста то, что уже обработал.

Автор: Departed 29.4.2008, 13:46
а каким оператором это делается?

Автор: aktuba 29.4.2008, 14:44
Цитата(Departed @  29.4.2008,  14:46 Найти цитируемый пост)
а каким оператором это делается? 

Delete

Автор: Departed 29.4.2008, 14:47
а можно пример, как из ричэдита делейтом удалить текст с одной позиции до другой

Автор: aktuba 29.4.2008, 15:34
Цитата(Departed @  29.4.2008,  15:47 Найти цитируемый пост)
а можно пример, как из ричэдита делейтом удалить текст с одной позиции до другой 

Из TMemo - Delete(Memo1.Lines.Text, 1, 10); - удалить символы с 1 позиции 10 шт. TRichEdit не использую, т.ч. сам ищи.

Автор: Departed 29.4.2008, 15:56
Спасибо разобрался

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)