Bonjour,
J'aimerais créer un signet "place1" à l'endroit où se trouve le curseur dans ma macro :
En fait pour être plus précis, ce que je veux faire et que j ai fait c'est :
- lorsque je clique sur un bouton radio : du texte apparait à l'endroit du signet "place1"
- lorsque ce bouton est décliqué, le texte disparait (caractère par caractère ce qui n'est pas super, si vous avez un méthode meilleur que de mettre 150 dispatcher.executeDispatch(document, ".uno:Delete", "", 0, Array()) d'affilé; se serait cool.
jusque là ça va....grâce à ce forum !
MAIS lorsque je reclique sur le bouton, plus rien ne marche, en fait mon signet a disparus. Donc je me suis "créés en un nouveau"
Pourriez-vous m'aider ?
[Résolu][Writer] créer un signet au niveau du curseur
Modérateur : Vilains modOOs
Règles du forum
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
-
- Fraîchement OOthentifié
- Messages : 2
- Inscription : 28 sept. 2017 13:02
[Résolu][Writer] créer un signet au niveau du curseur
Libre office 5.3.6 sous windows XP
-
- MOOdérateur
- Messages : 1139
- Inscription : 01 oct. 2008 16:54
Re: [writer] créer un signet dans une macro
Bonjour,
Titre modifié : Le balisage doit bien sûr être correctement orthographié (première lettre en majuscule puis le reste en minuscules).
Macro est inutile dans la section consacrée aux macros.
Commencez par vous mettre à jour : https://forum.openoffice.org/fr/forum/v ... =2&t=49867
Puis corrigez l'information dans votre signature.
Si le problème persiste, joignez le document permettant de reproduire ce que vous décrivez :
Comment joindre un fichier au format ODF
Pensez également à dépersonnaliser le fichier joint.
***
Titre modifié : Le balisage doit bien sûr être correctement orthographié (première lettre en majuscule puis le reste en minuscules).
Macro est inutile dans la section consacrée aux macros.
Veuillez noter que la version utilisée est obsolète et n'est plus maintenue.Dans votre signature, il y a écrit :Openoffice 3.3 sous windows XP
Commencez par vous mettre à jour : https://forum.openoffice.org/fr/forum/v ... =2&t=49867
Puis corrigez l'information dans votre signature.
Si le problème persiste, joignez le document permettant de reproduire ce que vous décrivez :
Comment joindre un fichier au format ODF
Pensez également à dépersonnaliser le fichier joint.
***
Nettoyez votre PC du piratage, utilisez des logiciels libres à chaque lavage.
Une seule dose de OpenOffice suffit à éliminer durablement toute trace de MS-Office.
Une seule dose de OpenOffice suffit à éliminer durablement toute trace de MS-Office.
-
- Fraîchement OOthentifié
- Messages : 2
- Inscription : 28 sept. 2017 13:02
Re: [Writer] créer un signet au niveau du curseur
Bonjour,
Voici mon fichier.
Il y a deux macros : une qui créer du texte et l'autre qui l'efface.
les deux sont sur le bouton B.
Merci
Voici mon fichier.
Il y a deux macros : une qui créer du texte et l'autre qui l'efface.
les deux sont sur le bouton B.
Merci
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre office 5.3.6 sous windows XP
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Writer] créer un signet au niveau du curseur
Bonjour
A+
Elles sont affectées au bouton B, mais ne sont pas dans le document. De plus je ne suis pas certain que les événements réception et perte du focus soient les meilleurs pour réaliser ce que tu veux faire.le vent de l'est a écrit :Il y a deux macros : une qui créer du texte et l'autre qui l'efface.
les deux sont sur le bouton B.
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Membre enthOOusiaste
- Messages : 474
- Inscription : 18 mai 2010 18:49
Re: [Writer] créer un signet au niveau du curseur
Bonjour Vent de l'est.
Si vous utilisez les signets "Pense bête" il n'y en a que trois dans un document. Chaque nouveau signet effacera le plus ancien.
Un style de paragraphe ou les annotations pourraient être plus faciles à gérer. On peut en mettre plein, plein, plein... des tonnes.
Cordialement,
JF.L
Si vous utilisez les signets "Pense bête" il n'y en a que trois dans un document. Chaque nouveau signet effacera le plus ancien.
Un style de paragraphe ou les annotations pourraient être plus faciles à gérer. On peut en mettre plein, plein, plein... des tonnes.
Cordialement,
JF.L
Linux Mint 21.1 x64 + LibO 7.3.1 / LibO 7.1.1 + W10 x64
-
- SuppOOrter
- Messages : 1214
- Inscription : 06 avr. 2016 07:26
Re: [Writer] créer un signet au niveau du curseur
Bonjour,
Ci-joint une exemple. L'astuce consiste à créer un signet sur une portion de texte (immédiatement écrasée) plutôt que sur la position d'un curseur : dans le premier cas, le signet sera persistant quel qu'en soit le contenu; dans le second cas, le signet sera effacé dès que le contenu est une chaîne vide.
La macro affectée à l'événement "statut modifié" de chaque bouton :
La macro pour l'insertion du signet :
Le fichier joint ne contient aucun signet. Le nom du signet est attribué en fonction du nom de groupe des boutons radio.
Reste me semble-t-il à gérer le point d'insertion du signet, la position du curseur visible étant très aléatoire...
Cordialement.
Ci-joint une exemple. L'astuce consiste à créer un signet sur une portion de texte (immédiatement écrasée) plutôt que sur la position d'un curseur : dans le premier cas, le signet sera persistant quel qu'en soit le contenu; dans le second cas, le signet sera effacé dès que le contenu est une chaîne vide.
La macro affectée à l'événement "statut modifié" de chaque bouton :
Code : Tout sélectionner
sub btn_radio(event)
doc = thiscomponent
bouton = event.Source.Model
reperes = doc.Bookmarks
repere = bouton.GroupName
if not reperes.hasByName(repere) then
insere_signet(doc, repere)
end if
signet = reperes.getByName(repere)
signet.Anchor.setString(bouton.Tag)
end sub
Code : Tout sélectionner
sub insere_signet(doc, nom)
bookmark = doc.createInstance("com.sun.star.text.Bookmark")
bookmark.Name = nom
vc = doc.CurrentController.ViewCursor
vc.setString(nom)
doc.Text.insertTextContent(vc, bookmark, True)
end sub
Reste me semble-t-il à gérer le point d'insertion du signet, la position du curseur visible étant très aléatoire...
Cordialement.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
▼ | « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
▼ | « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)