2 messages in org.openoffice.fr.progRe: [prog] Masquer une section par macro
FromSent OnAttachments
Tony GALMICHEJun 18, 2004 12:27 am 
Tony GALMICHEJun 18, 2004 3:28 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: [prog] Masquer une section par macroActions...
From:Tony GALMICHE (tony@plastigray.com)
Date:Jun 18, 2004 3:28:35 am
List:org.openoffice.fr.prog

Re-bonjour à tous,

Tony GALMICHE a écrit le 18/06/04 09:27 :

Bonjour à tous,

Dans le but d'alimenter mon document sur les macros ( http://qa.openoffice.org/issues/show_bug.cgi?id=30353 ) j'aimerais ajouter un exemple de macro permettant de masquer une section en fonction de la valeur d'un champ de formulaire.

Je vais faire comme Jovial, je vais donner la réponse à ma question... ;-)

Et je vais remercier une nouvelle fois Bernard (jamais deux sans trois), car c'est grâce à son super outils pour afficher les méthodes et les propriétés des objets que j'ai réussi à m'en sortir dans les méandres de l'API de OOo. -> http://fr.openoffice.org/Documentation/How-to/Basic/XrayTool30_fr.sxw

Donc voici deux macros permettant de créer et de masquer des sections :

Sub Creer_Section Dim oDocument Dim oText As Object Dim objIntroVCursor As Object Dim objIntroTCursor As Object Dim oSection as object

oDocument=ThisComponent oText = oDocument.Text objIntroVCursor = oDocument.currentcontroller.getViewCursor() objIntroTCursor = oText.createTextCursorByRange(objIntroVCursor.getStart())

oSection = oDocument.createInstance("com.sun.star.text.TextSection") oSection.isProtected = TRUE oSection.Name = "MaSection" oText.insertTextContent(objIntroTCursor, oSection, FALSE) End Sub

sub Afficher_Masquer_Section dim oSection as object

oSection = ThisComponent.GetTextSections.GetByName("Section1") if oSection.IsVisible=FALSE then oSection.IsVisible=TRUE else oSection.IsVisible=FALSE end sub

Tony