Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.02.2017, 20:33   #1
lich king
Пользователь
 
Регистрация: 19.02.2017
Сообщений: 19
По умолчанию как вставить #10#13 в текст

как вставить #10#13 в RichEdit1 в позицию где сейчас находиться курсор?
SelLength := 0;
SelStart := a;

Последний раз редактировалось lich king; 20.02.2017 в 20:35.
lich king вне форума Ответить с цитированием
Старый 20.02.2017, 20:59   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

просто RichEdit1.SelText:=#13#10;
SelStart не меняй, в нем позиция курсора
SelLength если не обнулять, то с замещением выделенного, если оно есть конечно
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 20.02.2017, 22:20   #3
lich king
Пользователь
 
Регистрация: 19.02.2017
Сообщений: 19
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
просто RichEdit1.SelText:=#13#10;
SelStart не меняй, в нем позиция курсора
SelLength если не обнулять, то с замещением выделенного, если оно есть конечно
чет не робит
Цитата:
rocedure TForm1.N801Click(Sender: TObject);
var
a,b,I,linenum:integer;
S,sf:string;

begin
for I := 0 to I do RichEdit1.Lines.Count
begin
with RichEdit1 do
begin
SelLength := 0;
SelStart := 80;
form1.RichEdit1.SelText:=#10#13;

end;

end;
end;
lich king вне форума Ответить с цитированием
Старый 20.02.2017, 22:27   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Так оно просто не компилируется. До не робит еще дойти нужно ))
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 20.02.2017, 22:31   #5
lich king
Пользователь
 
Регистрация: 19.02.2017
Сообщений: 19
По умолчанию

а как?
lich king вне форума Ответить с цитированием
Старый 20.02.2017, 22:32   #6
lich king
Пользователь
 
Регистрация: 19.02.2017
Сообщений: 19
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Так оно просто не компилируется. До не робит еще дойти нужно ))
А как это делать?
lich king вне форума Ответить с цитированием
Старый 21.02.2017, 11:10   #7
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,527
По умолчанию

Код:
for I := 0 to I do RichEdit1.Lines.Count// число строк у нас будет меняться поэтому for нормально отработает только с конца
for I:=RichEdit1.Lines.count-1 downto 0 do НО резать-то будем сначала оставляя хвост на потом 
I:=0;
while I<RichEdit1.Lines.count do 
begin
with RichEdit1 do //ну не люблю я width
begin
SelLength := 0;
SelStart := 80; // SelStart не имеет НИКАКОГО отношения к строкам текста (Text.Lines). 
это позиция в "линейно" вытянутом тексте( в одну строку), включая при этом и переводы строк (#13#10) как символы.
form1.RichEdit1.SelText:=#10#13;
s:=RichText1.Lines.String[i]; // а нам нужны нам строки 
if length(s)>80 then begin
  RichText1.Lines.String[i]:=copy(s,1,80); // начало оставляем на месте
  RichText1.Lines.Insert(I+1, copy(s, 81, length(s));//ВТИСКИВАЕМ(Insert) остаток строки сдвигая прочие
end;
I:=I+1; //идем на следующую строку
end;
или работая
Цитата:
в "линейно" вытянутом тексте( в одну строку), включая при этом и переводы строк (#13#10) как символы.
Код:
i:=1;
while i<length(RichText1.Lines.Text) do begin
  k:=posEx(#13#10, RichText1.Lines.Text, i); //ищем конец строки(#13#10) начиная с указанного места i
  if k<0 then k:=length(RichText1.Lines.Text);
  
  if k-i >80 then у нас длинная строка
  begin // 
     RichText1.selstart:=i+80; // в нужном месте
     RichText1.sellength:=0; 
     RichText1.seltext:=#13#10; // делим ее
  end
  else //она короткая 
     i:=k+length(#13#10); //пропускаем её
end;
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 21.02.2017 в 11:33.
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вставить обычный текст и как его вписывать Tamago4aRUS Общие вопросы Delphi 17 21.08.2015 09:06
как вставить копированный текст в richedit ? alman12 Общие вопросы Delphi 4 25.07.2014 12:52
Как вставить многострочный текст с болдами в ячейку? alt2 Microsoft Office Excel 3 25.10.2011 15:48
Как вставить кусок текста в текст Tomatos Общие вопросы Delphi 5 24.09.2009 21:00
Как вставить в TListBox цветной текст? VintProg Общие вопросы Delphi 2 03.08.2009 11:46