Вверх ↑
Ответов: 2059
Рейтинг: 132
#1: 2022-02-16 19:24:49 ЛС | профиль | цитата
sla8a, я устал.
Мне сегодня утром делали серьёзную операцию на нёбе и челюсти...
Если хотите разбирайтесь.
Мне ничего доказывать не надо.
Тем более все рассуждения поверхностны, перепрыгиваем с компонента на компонент... без погружения в суть дела.
Надо посмотреть код, дело выеденного яйца не стоит, а бодягу развели.
И вас не смущает что вы вынули из элемента подсчет длинны строки (Length(str)) и предлагаете считать отдельным элементом (Length: Возвращает длину строки).
неужели это тоже надо объяснять, что сделано для наглядности примера(с моими изменениями). откуда я чего вынул?... Всё какие то домыслы. Дело простое, как три копейки!
Если вы считаете, что это будет работать и ничего не смущает:
procedure THICopy._work_doCopy;
var   str:string;
      Pos,Count:integer;
begin
   str := ReadString(_Data,_data_Str,'');
   if str <> '' then begin
      Pos := ReadInteger(_Data, _data_Position, _prop_Position); 
      Count := ReadInteger(_Data, _data_Count, _prop_Count);
      case _prop_Direction of
        1: Pos := Length(str) - Count - Pos + 2;
      end;   
      if Pos <= 0 then begin 
         Inc(Count, Pos-1);
         Pos := 1;
      end;
      _hi_CreateEvent(_Data, @_event_onCopy, Copy(str,Pos,Count));
   end;
end;
пусть будет так.
Я устал что либо доказывать.

p.s.
Результирующая функция _hi_CreateEvent(_Data, @_event_onCopy, Copy(str,Pos,Count));
И о обратном переборе речи не может быть! О чём мы говорим?!
карма: 6

0
Редактировалось 2 раз(а), последний 2022-02-16 19:35:29