ok merci.
-------- Message original --------
Sujet : Re: [prog] Pb avec InsertString
De : Patrick Bernard <patr...@kilargo.com>
Pour : prog@fr.openoffice.org
Date : 25/11/2010 14:04
Le jeudi 25 novembre 2010, PREF31 Open-Office a écrit :
Bonjour,

Je suis en train de me familiariser avec la programmation des macros Ooo
à l'aide des excellents exemples trouvés sur le site

J'ai un petit souci avec la macro qui insère un en-tête. Dans la doc il
est dit que le troisième paramètre de insertString détermine le
remplacement ou non du texte déjà existant.
Or dans la macro qui suit que je mette

Texte2.insertString(Curseur2, "Voici un en-tête", false
ou
Texte2.insertString(Curseur2, "Voici un en-tête", true)

Le résultat est le même le texte se met bien en en-tête mais en début de
l'en-tête déjà présente. Y a-t-il un autre paramètre à initialiser?

Merci de vos réponses

Claude


Texte de la macro :

Option Explicit

Sub InsererUnEnTete()
Dim monDocument As Object
Dim monTexte As Object, monCurseur As Object
Dim   Texte2 As Object,   Curseur2 As Object
Dim nomStyleMaPage As String, StyleMaPage As Object
Dim lesStylesPage As Object
monDocument = ThisComponent
monTexte = monDocument.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 = monDocument.StyleFamilies.getByName("PageStyles")
' récupérer le style de la page en cours
StyleMaPage = lesStylesPage.getByName(nomStyleMaPage)
With StyleMaPage
  .HeaderIsOn = true ' insérer un en-tête
  .HeaderBodyDistance = 1000 ' 10 mm
  .HeaderHeight = 2500 ' 25mm
  Texte2 = .HeaderText ' zone de texte de l'en-tête
End With
Curseur2 = Texte2.createTextCursor ' curseur dans l'en-tête
' écrire un texte dans l'en-tête
Texte2.insertString(Curseur2, "Voici un en-tête", false)
End Sub

Bonjour

Le comportement de la macro est normal. La ligne "Curseur2 =
Texte2.createTextCursor" crée un curseur ponctuel (qui ne sélectionne
pas de texte) au début de Texte2. La fonction insertString ne risque pas
de remplacer du texte existant, puisque aucun tetxe n'est sélectionné
par le curseur.

--
Patrick Bernard

Kilargo
Développement et intégration de logiciels
http://www.kilargo.com


---------------------------------------------------------------------
To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org
For additional commands, e-mail: prog-h...@fr.openoffice.org



Répondre à