Se me ha ocurrido que se podría utilizar una herramienta externa que simule los clicks del ratón. He encontrado xdotools, una herramienta que hace eso (entre otras muchas cosas) y esto que sigue "casi" funciona:
Código:
If Mouse.Right
' n = txtedit.Pos
' txtedit.EnsureVisible()
' txtedit.refresh
' Wait
Exec ["xdotool", "click", "1"] Wait
' While n <> txtEdit.pos
' If n < txtedit.pos Then
' Desktop.SendKeys(Key.PgDown)
' Else If n > txtedit.pos Then
' Desktop.SendKeys(Key.Pgup)
' Endif
' txtedit.EnsureVisible
' Wait
' Exec ["xdotool", "click", "1"] Wait
' Wend
seleccionapalabra()
Si tenemos en pantalla el cursor y pulsamos botón derecho sobre otra palabra funciona de maravilla... pero si el cursor no está en pantalla porque hemos hecho scroll... no. mejor dicho sí funciona, pero el control hace scroll y la palabra seleccionada no es la correcta...
Todas las lineas comentadas son intentos de solucionar eso... pero natis de natis. (Según escribo ésto me viene a la mente: ¿No había por ahí un evento scroll()?) Seguiremos investigando.
Saludos