Главная страница
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.026 c
2-1151675349
Fantos
2006-06-30 17:49
2006.07.16
Открыть с помощью......


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


2-1151566117
PSPF2003
2006-06-29 11:28
2006.07.16
Проблема с DATA


4-1144143828
Babay
2006-04-04 13:43
2006.07.16
Сменить фон TreeView


6-1142314044
Oops
2006-03-14 08:27
2006.07.16
Дата изменения файла на удаленном серваке