Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.16;
Скачать: CL | DM;

Вниз

Как узнать какая буква под курсором в RichEdit?   Найти похожие ветки 

 
тт   (2006-06-02 17:44) [0]

В TMemo то можно так:
procedure TForm1.Memo1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var
c :integer;
w :word;
begin
longint(c):=SendMessage(Memo1.Handle,EM_CHARFROMPOS,0,MAKELPARAM(x,y));
if c<>-1 then
begin
 w:=LoWord(cardinal(c));
 self.Caption:=tr2.Text[w];
end;
end;

А в TRichEdit, если пользоваться таким же способом, выдает ошибку.

Так как же узнать какая буква под курсором в RichEdit?


 
MBo ©   (2006-06-02 18:21) [1]

В MSDN посмотри справку по этому сообщению - для Richedit оно используется иначе


 
Чапаев ©   (2006-06-02 19:05) [2]

RichEdit1.Lines.Text[RichEdit1.SelStart] -- так?


 
тт   (2006-06-02 19:09) [3]

...Чапаев ©   (02.06.06 19:05) [2]

RichEdit1.Lines.Text[RichEdit1.SelStart] -- так?

Что-то я сомневаюсь, сейчас проверю.

Так я и не понял.
А это вообще элементарно делается?


 
begin...end ©   (2006-06-02 19:19) [4]

> тт   (02.06.06 19:09) [3]
> А это вообще элементарно делается?

Угу.

procedure TForm1.RichEdit1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var
 P: TPoint;
begin
 P := Point(X, Y);
 with Sender as TRichEdit do
   Caption := Text[Perform(EM_CHARFROMPOS, 0, Integer(@P))]
end


 
тт   (2006-06-02 20:53) [5]

begin...end ©   (02.06.06 19:19) [4]

То что нужно!!!



Страницы: 1 вся ветка

Текущий архив: 2006.07.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.048 c
15-1150722901
lookin
2006-06-19 17:15
2006.07.16
Защита интеллектуальной собственности...


5-1124462652
alba
2005-08-19 18:44
2006.07.16
listview пропадает scrollbar


8-1138619267
Noby
2006-01-30 14:07
2006.07.16
Разделение аудио потоков в AVI


6-1140887955
Sco
2006-02-25 20:19
2006.07.16
IP адресса


15-1150443375
max999
2006-06-16 11:36
2006.07.16
Вопрос по ф-циям работы с памятью