Я хочу отобразить всплывающую подсказку, когда мышь наводится на ссылку в моем настраиваемом редакторе редактирования. Рассмотрим следующий текст:
Мы все спать ночью.
В моем случае слово sleep - это ссылка.
Когда пользователь перемещает мышь по ссылке, в этом случае "sleep", я хочу отобразить всплывающую подсказку для ссылки.
Мне пришло в голову следующее: они не работают
1) Ловушка OnMouseHover
if(this.Cursor == Cursors.Hand)
tooltip.Show(textbox,"My tooltip");
else
tooltip.Hide(textbox);
Но это не сработает.
UPDATE
Указанные ссылки - это не URL-адреса, т.е. это настраиваемые ссылки, поэтому Regex здесь не будет очень полезной, это может быть любой текст. Пользователь может создать для него ссылку.
Хотя я не пробовал метод GetPosition
, я не думаю, что это было бы элегантно с точки зрения дизайна и обслуживания.
Позвольте мне сказать, что у меня есть следующая строка, в моей ячейке richedit
Мы спать ночью. Но летучие мыши остаются бодрствующими. Тараканы становятся активными ночью.
В приведенном выше предложении я хочу три разных подсказки, когда мышь на них наводится.
sleep -> Human beings
awake -> Nightwatchman here
active -> My day begins
Я попал в ловушку OnMouseMove
следующим образом:
Работа с Messagebox
OnMouseMove( )
{
// check to see if the cursor is over a link
// though this is not the correct approach, I am worried why does not a tooltip show up
if(this.Cursor.current == Cursors.hand )
{
Messagebox.show("you are under a link");
}
}
Не работает - с помощью всплывающей подсказки - всплывающая подсказка не отображается
OnMouseMove( MouseventArgs e )
{
if(cursor.current == cursors.hand )
{
tooltip.show(richeditbox,e.x,e.y,1000);
}
}