Trichedit i ustawianie pozycji

0

mam pytanie, w jaki sposob ustawic kursor edycji w Trichedit, chodzi mi o pozycje x,y , dzieki funkcji TRichEdit.CaretPos mozna pobrac ta pozycje niestety jest ona tylko do odczytu, funkcja SelStart tez sie nie da bo jest ona podawana jako pozycja znaku w ciagu calego TRich Edita .Mozliwe ze cos przegapilem, prosze o pomoc

0

eee nie chce mi sie szukać ostatecznie możesz zliczać ilość znaku w linijkach i na podstawie tego ustawiać SelStart.

0
TRichEdit.SetCaretPos(const Value: TPoint); override;
0

Ladnie to wyglada ale niestety w Delphi 5 NIE MA takiej funkcji :-(

0
 TRichEdit1.CaretPos:= //tu współrzędne jako TPoint 

Dziwne...
U mnie komentarz wyświetla podwójnie...

0

Wlasnie ze tak sie nieda juz pisalem o tym, jest to funkcja tylko do odczytu (Error:Cannot assign to a read-only property), widocznie jest to nastepne niedopatrzenie tworcow komponentu w tej walsnie wersji delphi :-/

0

Wlasnie wpadlem na pomysl, czy ktos komu dziala funkcja TRichEdit.SetCaretPos o ktorej napisal PieterEr moglby mi wkleic na forum kod zrodlowy (prawdopodobnie znajduje sie ona w unicie StdCtrls)
z tego co widze bedzie to zrobione na sendmessage`ach

0
procedure TForm1.Button1Click(Sender: TObject);
var
 line, col :Integer;
begin
  line:=Pred(StrToIntDef(Edit1.Text,2)); //nr linii z Edit1
  col:=Pred(StrToIntDef(Edit2.Text,2));   //nr kolumny z Edit2
  RichEdit1.SelStart:=(SendMessage(RichEdit1.Handle,EM_LINEINDEX, line,0)+col);
  RichEdit1.SetFocus;
end;

PS. Mam Personala więc to własna twórczość, a nie StdCtrls

0

Ale wpadka...

Tak będzie dobrze (mam nadzieję):

RichEdit1.Selstart:= //tu pozycja

AAAAA!!!
Czemu komentarze wyświetla mi podwójnie?

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