Как выделить абзац на несколько строк. Абзацы ограничены номером, а не #10 + *#13? Выделение страха осуществляется щелчком мыши или пролетом над абзацем.
Delphi выберите абзац в richedit
comment
@Andreas Rejbrand, абзацы довольно формальны для TRichEdit. Однако я боюсь летающих мышей и роботов-переводчиков.
- person Premature Optimization   schedule 27.09.2011
comment
@Downvoter: извините. Думаю, я должен был это знать.
- person Andreas Rejbrand   schedule 27.09.2011
comment
@downvoter Я думаю, что Андреас спрашивал Мостафу, что имелось в виду под абзацами, ограниченными по количеству. Предположительно, это какое-то определение абзацев, не совпадающее с определением форматированного текста.
- person David Heffernan   schedule 27.09.2011
comment
@ Дэвид Хеффернан, хорошая мысль.
- person Premature Optimization   schedule 27.09.2011
comment
@Андреас Рейбранд, пожалуйста, примите мои извинения, я интерпретировал текст вопроса (я убежден, что текст вопроса был создан с помощью машинного перевода, и робот скрыл от нас какой-то смысл). Лучше сначала выяснить, что ОП имел в виду под абзацами с цифрами (пулями?).
- person Premature Optimization   schedule 27.09.2011
Ответы (2)
По сути, если вы используете общедоступные свойства SelStart и SelLength вашего TRichEdit, вы можете выбрать любой текст, который хотите, в своем элементе управления richedit.
Таким образом, вы можете разбить текст на части, как хотите, на абзацы или нет, а затем просто программно выделить его фрагмент.
person
haimg
schedule
03.10.2011
{********************************************************************}
// Nombre de la funcion: TI2FStrings.GetCursorSQL
// Explicación: Obtiene el párrafo donde está situado el cursor.
//
// Usuario Fecha Modificación
// ------------ ---------- ------------------------------------------
// drodriguez 11/08/2005 Creación
{********************************************************************}
class function TI2FStrings.GetCursorSQL(Text: string; CursorPos: Integer): string;
var
LastPos, iPos: Integer;
IniPos, FinPos: Integer;
Begin
iPos:= 1;
Repeat
LastPos:= iPos;
iPos:= PosEx(#13#10#13#10, Text, iPos);
if (iPos <> 0) then Inc(iPos, 2);
until (iPos = 0) or (CursorPos < iPos - 1);
if (iPos = 0) then iPos:= Length(Text)
else Dec(iPos, 2);
FinPos:= iPos;
IniPos:= LastPos;
Result:= Trim(Copy(Text, IniPos, FinPos - IniPos + 1));
end;
Это нужно для получения SQL от TMemo, где каждый SQL отделяется пустой строкой. Просто замените #13#10#13#10
на #13#10
.
person
Dani Rodríguez
schedule
10.10.2011