Главная страница
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.028 c
15-1150556177
Vlad Oshin
2006-06-17 18:56
2006.07.16
любые числа +-*:


15-1150149793
www.asm-forever.com
2006-06-13 02:03
2006.07.16
Новый форум по ассемблеру ww.asm-forever.com


2-1151352861
Norfolk
2006-06-27 00:14
2006.07.16
Ограничение на количество символов в TMemo и TEdit


15-1150446709
LingvoRu
2006-06-16 12:31
2006.07.16
Мощная фраза


1-1149560100
Explorer
2006-06-06 06:15
2006.07.16
Экспорт данных в Источник данных Worda