Zmiana lini wRichEdit

0

Jak zmienic programowo wybrana linie w RichEdit.
Tzn wiem jak sie zmienia jej kolor i wiem ze jest SelStart i SetLength ale jakos nie umei sobie poradzic zeby zaznaczyc cala linie.

Nie ma czlowieka ktory zna odpowiedz na to pytanie ?????????

0

(niedziwne, że nikt nie odpowiada - jak taki avatar zobaczyłem, to na balkon uciekłem...)

definiuj Linia;
definiuj iteracja;
definiuj start = 0;
dla iteracja < Linia - 1 rób iteracja = iteracja + 1; start = start + dlugosc(RichEdit1.Lines.Strings[iteracja]);

RichEdit1.SelStart = start;
RichEdit1.SelLength = dlugosc(RichEdit1.Lines.Strings[Linia])

Powinno po przetłumaczeniu na Delphi być dobrze... (RichEdit1.Lines.Strings[iteracja] jet to odwołanie się do określonego elementu tablicy)

0

Ale chodzi Ci o linie jako fragment tekstu oddzielony #10#32, czy linie jako jedną linijke tak jak widać w richedit ? (chodzi o zawijanie wierszy)

0

A do gotowców nie łaska zajrzeć?

procedure SelectLine(Memo:TCustomMemo; Row: Integer);
begin
  Memo.SelStart := Memo.Perform(EM_LINEINDEX,Row, 0);
  Memo.SelLength:=Length(Memo.Lines[Row]);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 SelectLine(RichEdit1, StrToIntDef(Edit1.Text,0));
 RichEdit1.SelAttributes.Color:=clRed;
end;
0

mam pytanko dodatkowe. jestem w srodku tekstu, powiedzmy ze w lini 4, chcialbym teraz wstawic nowy tekst jako 5 linie, ale nie zastepujac stara lecz dodajac nowa
(wiem ze banalne:))

// mowilem ze banalne :)

0

RichEdit1->Lines->Insert(int, const AnsiString) //tak to wygląda w BCB

Przypuszczam, że w Delphi podobnie (w końcu VCL)... Więc rozejrzyj się za funkcją [code]RichEdit1.Lines.Insert[/code]

0

Juz sobie poradzil wczesniej ale dzikei za opowiedzi.

ps
Krecik za to ty masz najlepszy avart a ksywka jeszcze bardziej masz wyjebana [krzyk]

1 użytkowników online, w tym zalogowanych: 0, gości: 1