![]() |
|
|
#1
|
|||
|
|||
![]() У меня есть popupmenu и memo, как мне сделать так чтоб меню выскакивало при нажатии на определённую кнопку перед вводимым в мемо словом. Всё остальное понятно, но как определить координаты в мемо чтоб оно вываливалось по ходу набора текста перед последней буквой?
|
#2
|
|||
|
|||
![]() Я думаю тебе надо будет создать новый поток, который будет следить, за вводимым текстом, как в Wordе. Но как именно это сделать я пока не знаю.
|
#3
|
|||
|
|||
![]() Ну надо просто как то прировнять координаты курсора в мемо к координатам мышки или экрана.
|
#4
|
||||
|
||||
![]() Код:
procedure OnKeyDown(~...~); vap _mnupos:TPoint; begin _mnupos.X:=Self.Left+Memo1.Left; _mnupos.Y:=Self.Top+Memo1.Top; If Key='q' Then MopupMenu1.Popup(_mnupos.X,_mnupos.Y); end; — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#5
|
|||
|
|||
![]() M.A.D.M.A.N. Что-то не так, появляется рядом с мемо и в одном и томже месте независимо от курсора в мемо.
Есть CaretPos у мемо но всё равно не получается привязать. Он берет координаты не по символам да? Я похоже запутал я имею ввиду как узнать экранные координаты каретки в мемо. Последний раз редактировалось Qwed86, 28.10.2008 в 15:12. |
#6
|
||||
|
||||
![]() У тебя из-за разных шрифтов менюшка будет выскакивать в разных местах.
А вот код получения курсора я уже увы забыл. — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |