Тема: edit-memo
Показать сообщение отдельно
  #2  
Старый 03.02.2015, 17:00
MotoArhangel MotoArhangel вне форума
Новичок
 
Регистрация: 14.10.2012
Сообщения: 58
Версия Delphi: Delphi 10.4
Репутация: 10
По умолчанию

Исходник не смотрел. Скажу одно. можно и без циклов
Используем case of end для подсчета количества той или иной цифры + процедура допустим NextCh.
Как то так:
Код:
case str of 
1:
  begin
     что то делаем;
     NextCh;
  end;
,:
  begin
     что то делаем;
     NextCh;
  end;
.....
end

Для мемо делал так
Код:
procedure NextCh;{ Читать следующий символ }
begin
  if Line = MainForm.MemoListing.Lines.Count
    then Ch := chEOT // если достигнут конец текста, то в Ch заносим признак "конец текста"
  else
    if Pos > Length(MainForm.MemoListing.Lines.Strings[Line])
      then  // если достигнут конец строки, то ...
      begin
        Ch := chEOL; // в Ch заносим признак "конец строки"
        Line := Line + 1; // и переходим к следующей строке
        lineNum:=line; //Сохраняем номер строки
        Pos := 1; // Установили начальную позицию в новой строке
      end
    else  // иначе обрабатываем следующий символ в строке
      begin
        Ch := MainForm.MemoListing.Lines.Strings[Line][Pos];
        Pos:= Pos+ 1; //Переходим на новую позициию
        lineNum:=line+1; //Сохраняем номер строки

      end;
end;
Ответить с цитированием