Je dois être bête mais je n’arrive pas a sélectionner un texte que je viens
de créer dans un entête sous oOWriter

En fait je souhaiterai écraser l’entête a chaque fois que j’appelle ma
fonction entête …et pouvoir réaliser un cadrage (centre en particulier)

Ci-dessous mon code sous VB .NET

Sub Entete(ByVal sTexteCentre As String, Optional ByVal sEcraser As Boolean
= True, Optional ByVal sCadrage As String = "Centre")
        Dim monTexte As Object, monCurseur As Object
        Dim TexteCentre As Object, CurseurCentre As Object
        Dim nomStyleMaPage As String, StyleMaPage As Object
        Dim lesStylesPage As Object
        Dim Arguments(0) As Object
        monTexte = oDocument.Text
        monCurseur = monTexte.createTextCursor
        ' récupérer le nom du style de page en cours
        nomStyleMaPage = monCurseur.PageStyleName
        ' print "Cette page est du style : " & nomStyleMaPage
        ' récupérer la collection de styles de pages
        lesStylesPage = oDocument.StyleFamilies.getByName("PageStyles")
        ' récupérer le style de la page en cours 
        StyleMaPage = lesStylesPage.getByName(nomStyleMaPage)
        With StyleMaPage
            .HeaderIsOn = True ' insérer un entête
            .HeaderBodyDistance = 1000 ' 10 mm
            .HeaderHeight = 2500 ' 25mm
            TexteCentre = .HeaderText ' zone de texte centre de l'entête
        End With
        CurseurCentre = TexteCentre.createTextCursor ' curseur centre dans
l'entête
        If sEcraser = True Then
            CurseurCentre.gotoStart(False)
            CurseurCentre.gotoEnd(True)
            'Récupérer le texte sélectionné par le curseur
            'monTexte =
oDocument.Text.createTextCursorByRange(CurseurCentre)
        End If

        ' écrire un texte dans l'entête
        TexteCentre.insertString(CurseurCentre, sTexteCentre, False)
        ' Gestion du cadrage
        Select Case sCadrage
            Case "Centre"
                oSel = oDocument.CurrentController.Frame
                Arguments(0) = MakePropertyValue("CenterPara", True)
                oDispatcher.executeDispatch(oSel, ".uno:CenterPara", "", 0,
Arguments)
            Case "Droite"
                oSel = oDocument.CurrentController.Frame
                Arguments(0) = MakePropertyValue("RightPara", True)
                oDispatcher.executeDispatch(oSel, ".uno:RightPara", "", 0,
Arguments)
            Case "Gauche"
                oSel = oDocument.CurrentController.Frame
                Arguments(0) = MakePropertyValue("LeftPara", True)
                oDispatcher.executeDispatch(oSel, ".uno:LeftPara", "", 0,
Arguments)
            Case "Justifié"
                oSel = oDocument.CurrentController.Frame
                Arguments(0) = MakePropertyValue("JustifyPara", True)
                oDispatcher.executeDispatch(oSel, ".uno:JustifyPara", "", 0,
Arguments)
        End Select

    End Sub


Je pense que mon problème est lié au curseur .. comment sélectionner le
texte avant d'acrire pour pouvoir écraser le texte existant ?


________________________________________
De : Cezame Concept [mailto:[EMAIL PROTECTED] 
Envoyé : mardi 11 avril 2006 11:37
À : prog@fr.openoffice.org
Objet : [prog] Entete et pieds de page

Je précise ma demande …
En fait je souhaiterais par programmation avec VB Express 2005 pourvoir
modifier les entêtes et pieds de pages de documents oOClac et oOWriter
Pour activer les entêtes et pieds j’utilise la commande suivante …

Public Function ChargerService() As Boolean
  'On Error GoTo sortie
   oServiceManager = CreateObject("com.sun.star.ServiceManager")
   oDesktop = oServiceManager.createInstance("com.sun.star.frame.Desktop")
   oDispatcher =
oServiceManager.createInstance("com.sun.star.frame.DispatchHelper")
   ChargerService = True
    'Sortie:
    'LoadService = False
End Function
Sub EntêtePiedDePage()
   Dim Arguments(0) As Object
   oSel = oDocument.CurrentController.Frame
   oDispatcher.executeDispatch(oSel, ".uno:EditHeaderAndFooter", "", 0,
Arguments)
End Sub
Comment ensuite sélectionner les éléments a modifier ? Gauche droite centre
pour les entetes et pieds …
Comment insérer les champs prédéfinis (date N° page …)
Merci pour votre aide

----------------------------------------------------------------------------
-----------
Wanadoo vous informe que cet e-mail a ete controle par l'anti-virus mail.
Aucun virus connu a ce jour par nos services n'a ete detecte.




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

Répondre à