Merci Gilles

Oui, je sais ... Il faudrait aller sur l'autre liste, cependant, juré,
promis, je ne retoucherai plus aux macros, c'est trop pénible !!!
Quand je pense que du temps de MS DOS, il existait des logiciels avec des
langages de programmation en français et très pratiques (SMART par exemple,
suite bureautique du tonnerre) ...
mon problème est le suivant :  j'ai écrit cette petite macro :

sub Maj3
rem ----------------------------------------------------------------------
dim document   as object
dim dispatcher as object
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
 rem ----------------------------------------------------------------------
dim CurseurVisible as object
dim monDocument as object
monDocument=ThisComponent
CurseurVisible=monDocument.currentcontroller.ViewCursor
rem j'imagine qu'on a ici stocké en mémoire la position, mais la mise à jour
de la table des matières peut déplacer ce  point du pointeur de la souris,
je fais donc appel à un repère de texte
rem bis : je suis obligé de déclarer : document, d'une part, mondocument de
l'autre, car sinon, j'ai des erreurs lors de l'exécution de la macro ...

'création du repère de texte
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Bookmark"
args1(0).Value = "ccc"
dispatcher.executeDispatch(document, ".uno:InsertBookmark", "", 0, args1())
'-------------------------------------------
 
'mise à jour des tables et index
dispatcher.executeDispatch(Document, ".uno:UpdateAllIndexes", "", 0,
Array())

'recherche du repère de texte
Bookmark = monDocument.Bookmarks.getByName("ccc")
 
'tentative de retour du pointeur souris au niveau du repère de texte : Il
faudrait maintenant que mon curseur visible se place à cette position, et
non pas qu'il reste sur la table des matières ,et là je ne sais plus faire,
monDocument.currentcontroller.ViewCursor =
monDocument.text.createtextCursorByRange(Bookmark.Anchor)
' j'obtiens le message que cette propriété est en lecture seule !!!!
 
end sub
 
Alors, si je pouvais quand même avoir une réponse sur cette liste, ce serait
rudement bien !!!   ;-)
 
Christophe Nussbaum


-----Message d'origine-----
De : gilles bignebat [  <mailto:[EMAIL PROTECTED]>
mailto:[EMAIL PROTECTED]
Envoyé : vendredi 11 août 2006 12:33
À : [email protected]
Objet : Re: [users-fr] Writer : Positionner le curseur


NUSSBAUM Christophe - CETE Lyon/LRA/Direction a écrit :
> Bonjour,
Bonjour,
>
> A la fin d'une macro,
buuump! Qui dit programmation de macro dit liste "[email protected]" !
:-)

 je souhaiterais pouvoir repositionner mon curseur à
> l'endroit où il était avant lancement de la macro (fort simple, qui sert
à
> actualiser tous les index, mais qui repositionne le curseur sur la table
des
> matières, et non là où il était au lancement de la macro)
>
Il existe 2 types de curseurs:
- un unique curseur visible qui représente la position du pointeur de la
souris dans le document
- un ou plusieurs curseurs d'écriture (invisibles) à créer pour indiquer
à la macro là où elle doit agir.


> quelle instruction faut-il utiliser ?

Dim CurseurVisible as Object
monDocument=ThisComponent

' Le curseur visible (pointeur souris) s'obtient par un:
CurseurVisible=monDocument.currentcontroller.ViewCursor

> Merci !

De rien, plus d'infos sur prog.
:-)
--
Gilles Bignebat
Consultant
 Bull, Architect of an Open World(TM)
Tel:    05 56 43 78 63
Mobile: 06 86 42 35 00
www.bull.com

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

Répondre à