Didier Dorange-Pattoret
Fri, 26 Feb 2010 02:53:19 -0800
Bonjour à tous, Avec le code ci-dessous, je peux récupérer la position de la souris sur un document Draw. Le scénario : - un doc draw nouveau est ouvert, - je lance la macro RegisterMousehandler, - en cliquant sur la page de dessin, j'obtiens la position de la souris en centième de millimètre à partir du coin supérieur gauche de la page de dessin.
Le problème, c'est qu'il y a une petite erreur que je ne comprends pas.
Essayez-vous même en cliquant sur le coin supérieur gauche vous n'aurez
pas 0,0
Quelqu'un a-t-il une idée de pourquoi ?
Rem : pour désactiver le XMouseClickHandler il suffit de fermer le
document ou de lancer UnRegisterMouseHandler.
D'avance merci.
/REM ***** BASIC *****
Global oDocView, oMouseListener, oContainerWindow as Object
Sub RegisterMouseHandler
oDocView = ThisComponent.getCurrentController '.GetFrame.getController
oMouseListener =
CreateUnoListener("MonEssai_","com.sun.star.awt.XMouseClickHandler")
oDocView.addMouseClickHandler(oMouseListener)
End Sub
Sub UnRegisterMouseHandler
oDocView = ThisComponent.getCurrentController
oDocView.removeMouseClickHandler(oMouseListener)
End Sub
Sub MonEssai_mousePressed(oEvt) as Boolean
monZoom = ThisComponent.CurrentController.Zoomvalue/100
monX = Int(oEvt.X*25.4 + (oDocView.VisibleArea.X)*monZoom)
monY = Int(oEvt.Y*25.4 + (oDocView.VisibleArea.Y)*monZoom)
Print monX, monY, oEvt.Buttons
MonEssai_mousePressed = True
End Sub
Sub MonEssai_mouseReleased(oEvt) as Boolean
MonEssai_mouseReleased = True
end sub/
--
Didier Dorange-Pattoret
http://www.dmaths.org
http://sesamath.net
Soutenez le projet Dmaths : rejoignez le club ou faites adhérer votre
établissement !
http://www.dmaths.org/documentation/doku.php?id=presentation:club