[EMAIL PROTECTED] a écrit :

L'erreur est que ça ne marche qu'avec des windowPeers, pas des windows ordinaire.
si tu le dis :-)
Ne me demande pas la différence...
Rassures-toi ;-)
En recherchant dans la description IDL de setPointer on voit que la méthode est 
offerte par l'interface XWindowPeer. A cette page de l'IDL, quand on clique sur 
la case Use (en haut) on voit les fonctions qui renvoient une telle interface. 
Essentiellement getPeer offert par l'interface XControl. Donc il faut récupérer 
le Peer à partir d'un contrôle. Plus exactement, à partir de la vue du contrôle.
En fait une partie de ton codage se trouve dans la bibli Tools, module 
ModuleControls (tiens donc!), routine SwitchMousePointer.
Dans un document Writer neuf, dépose un gros bouton, nommé "Bouton1". Voici le 
codage, utilisant la routine:

GlobalScope.BasicLibraries.LoadLibrary("Tools")
oDocument = ThisComponent unFormulaire = oDocument.DrawPage.Forms(0)
unControle = unFormulaire.getByName("Bouton1")
oCurrentController = oDocument.getCurrentController() vueControle = oCurrentController.getControl(unControle)
oWindow = vueControle.getPeer()
SwitchMousePointer(oWindow, False)
wait 10000 SwitchMousePointer(oWindow, True)

Lancer la macro depuis la fenêtre Writer. Pendant 10 secondes le sablier 
apparaît quand la souris est au-dessus du bouton.
Voila. C'est tout ce qu'on peut faire, je pense.

Bernard


Bon, en bidouillant (le mot est à sa juste valeur) entre ta macro et la mienne, j'arrive à afficher toutes les formes de curseur prévues dans le manuel. D'accord, j'ai pas encore tout testé, mais ça doit marcher.

Sub CurseurChange
GlobalScope.BasicLibraries.LoadLibrary("Tools")
oDocument = ThisComponent
unFormulaire  = oDocument.DrawPage.Forms(0)
unControle = unFormulaire.getByName("Bouton1")
oCurrentController = oDocument.getCurrentController()
vueControle = oCurrentController.getControl(unControle)
oWindow = vueControle.getPeer()
oPointer = createUnoService("com.sun.star.awt.Pointer")
oPointer.SetType(com.sun.star.awt.SystemPointer.HELP)
oWindow.setPointer(oPointer)
End Sub

Le curseur modifié reste modifié à l'intérieur du bouton (ici le curseur d'aide). Je ne sais pas si on peux améliorer, mais en attendant, merci pour ton coup de main.

Bon surf,
Christian

--
Visitez http://christianwtd.free.fr/ pour débuter avec Calc, d'OpenOffice.org

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à