At 2004-09-27 18:11, Alain wrote:
Bonjour, je suis mégaNovice en OOo, bidouilleur en WordBasic et n'y pige
plus rien...
La programmation OOo est assez différente, seules les instructions Basic
sont similaires. Les HowTo de programmation sur le site fr.openoffice.org
peuvent aider.
J'ai créé une boite de dialogue Dialog1
la boite Dialog1 comporte : TextField1
CommandButton1 (titre OK) (type
: bouton OK)
Pour lancer cette boite (Module1), je fais :
Sub Dialog1Show
DialogLibraries.LoadLibrary( "Standard" )
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
oDialog1.Execute()
End Sub
Je souhaite renvoyer la saisie de TextField1 dans mon document texte en
cliquant sur OK.
Mon document texte comporte la ligne :
Je renvoie ma saisie ici : (endroit où je veux renvoyer TextField1)
Pouvez vous m'indiquer la marche à suivre en détails... J'ai essayé avec
divers codes récupérés par-ci par-là, rien ne fonctionne.
En vous remerciant par avance.
on peut faire comme ça :
Sub Dialog1Show
exitOK = com.sun.star.ui.dialogs.ExecutableDialogResults.OK
oDialog1 = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
if oDialog1.Execute = exitOK then
tf1 = oDialog1.GetControl("TextField1")
leTexte = tf1.Text
print "réponse = " & leTexte
else
print "dialogue annulé"
end if
oDialog1.dispose
End Sub
-- commentaires --
le test exitOK sert à savoir si on a fermé le dialogue en cliquant un
bouton OK ou en annulant (par fermeture de la fenêtre ou bouton Cancel).
tf1 sert à récupérer l'objet contrôle texte
le texte dans le contrôle est récupéré dans la propriété Text de celui-ci.
Ensuite on l'utilise comme on veut, c'est une chaîne de caractères.
Je n'ai pas mis LoadLibrary car la bibliothèque Standard est toujours
chargée automatiquement.
oDialog1.dispose permet de libérer la ressource de dialogue.
Bonne journée
Bernard