[Résolu][Writer] Comment désélectionner une forme ?

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: 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 !
ThierryM
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 437
Inscription : 26 nov. 2006 11:29
Localisation : Les Corbières

[Résolu][Writer] Comment désélectionner une forme ?

Message par ThierryM »

Bonjour à tous,
Je rencontre un problème dans un programme avec lequel je travaille dans un tableau. Je duplique le contenu de la première cellule A1 pour remplir toute une page A4 (il faut appuyer sur le bouton jaune en haut de page). Le programme fonctionne sans problème sauf si un objet de dessin est sélectionnée avant son lancement. Par contre, il n'y a pas de problème si une image est sélectionnée.
Sélection_594.png
Je n'ai pas trouvé comment désélectionner cette forme : Xray m'indique qu'elle est toujours sélectionnée même lorsque je sélectionne la cellule du tableau via la macro avec un curseur d'écriture. Le curseur visible existe mais n'est pas "utilisable" (erreur avec "gotoStart" par exemple). Voir la pièce ci-jointe pour comprendre un peu mieux (programme dans module 1).
Il y a une solution (peu satisfaisante) qui consiste à stopper le programme au cas où un objet de dessin est sélectionné :

Code : Tout sélectionner

If objetSelection.supportsService("com.sun.star.drawing.Shapes") Then
	Msgbox "Veuillez déselectionner l'objet en cours pour éviter une erreur. Cliquez ailleurs."
	Exit Sub
 End If
J'ai essayé aussi de "déselectionner" avec cette commande mais elle est sans effet :

Code : Tout sélectionner

monDocument.CurrentController.select(Null)
Donc, j'aurais besoin de vos éclairages pour avancer (et surtout comprendre comment déselectionner ce type d'objet).
En vous remerciant par avance, cordialement,

Thierry
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par ThierryM le 17 mars 2018 13:30, modifié 5 fois.
LibreOffice Version: 7.6.2 / Linux Mint Mate Edition 21.2 / Pourquoi privilégier les formats de fichiers ouverts ?
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Writer] Comment désélectionner une forme ?

Message par OOotremer971 »

Bonjour,
Est-ce que tu peux tester ce code obtenu avec l'enregistreur de macro. Il exécute un appui sur la touche Esc dont l'effet est de désélectionner un objet sélectionné.
Testé sur Ubuntu 16.04 et LO 545
Ne plante pas si aucun objet sélectionné :

Code : Tout sélectionner

sub DeSelection
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Escape", "", 0, Array())


end sub
@+
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
ThierryM
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 437
Inscription : 26 nov. 2006 11:29
Localisation : Les Corbières

Re: [Writer] Comment désélectionner une forme ?

Message par ThierryM »

Merci beaucoup OOotremer971,
:bravo: Super astuce pour contourner le problème !!! J'avais essayé avec l'enregistreur de macro mais comme les actions à la souris (clic en dehors) n'étaient pas prises en compte, j'avais fait chou blanc. Le coup du "Échap" est lumineux pour désélectionner.
Bien cordialement,

Thierry

PS : J'ai mis à jour les fichiers permettant de dupliquer un mot à photocopier sur une feuille dans la partie "Projets" du forum https://forum.openoffice.org/fr/forum/v ... 26&t=52885
LibreOffice Version: 7.6.2 / Linux Mint Mate Edition 21.2 / Pourquoi privilégier les formats de fichiers ouverts ?