Builder - TRichEdit

0

Czy jest możliwe zapisanie zawartości okienka TRichEdit do pliku przy pomocy komponentu TSaveDialog bez formatowania (sam goły tekst, tylko ze spacjami, enterami, tabulacjami itd) ?! Jeżeli tak to proszę o wyjaśnienie lub linka do miejsca gdzie znajduje się odpowiedź.

Druga sprawa dotyczy fragmentu kodu, który umożliwiałby wstawianie jakiegoś tekstu w miejsce gdzie znajduje się kursor. Oto działający kod do RichEdit :
[code]
int Wiersz = RichEdit1->Perform(EM_EXLINEFROMCHAR, 0, RichEdit1->SelStart) + 1;
int Kolumna = RichEdit1->SelStart - RichEdit1->Perform(EM_LINEINDEX, -1, 0) + 1;
AnsiString LineText = RichEdit1->Lines->Strings[Wiersz - 1];
LineText = LineText.Insert("jakis_tekst", Kolumna);
RichEdit1->Lines->Strings[Wiersz-1] = LineText;[/code]

Czy można coś podobnego zrobić w Memo ? Zaznaczam, że powyższy kod nie działa pod Memo, prawdopodobnie trzeba go jeszcze zmodyfikować. Proszę o sugestie.

edit : Oczywiście chodziło mi o komponent Memo, już poprawiłem :D

0

Spradz czy TRichEdit->Text da sie zapisac a jak nie to TRcihEdit->Text przypisz do TStringList->Text i TStringList->SavoToFile

0
  1. Przed zapisaniem wstaw RichEdit1->PlainText = true;

String text = "Ala ma zielonego kota";
int pos = Memo1->SelStart;
Memo1->Lines->Text = Memo1->Lines->Text.Insert(text,pos+1);
0

Dzięki krecik.

Mam jeszcze takie pytanka :

  1. Jak umieścić kursor tekstowy w wybranej kolumnie i wierszu pola TRichEdit ?
  2. Jak skopiować lub wyciąć fragment tekstu zaznaczony w polu TRichEdit (zaznaczony np. za pomocą shift i kursorów lub myszki)?
0

Na oba naraz:

int Linia=2; //pamiętaj, że linie indexuje się od zera
int Znak=3;//ale już znaki nie
int ogol = RichEdit1->Perform(EM_LINEINDEX, Linia, 0);
ogol = ogol + Znak;
RichEdit1->SelStart = ogol;
RichEdit1->SetFocus();


//funckje ze schowkiem
RichEdit1->CopyToClipboard();   //kopiuje
RichEdit1->CutToClipboard();    //wycina
RichEdit1->PasteFromClipboard();//wkleja

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