Bonjour à tous les deux, et encore merci de vous être penché sur mon cas.

J'apporte une petite précision suite à un test simple que je viens de faire
(avec le snippet ):

Je récapitule :
je crée un document "devis" au moyen d'un modèle de document plein de
macros;
via une autre macro, j'enregistre ce document sous le nom "Facture", j'ouvre
ce document facture et je fais les modifications appropriées.
Le bouton "Modifier", présent dans mon document "Devis", se retrouve donc
dans mon document "Facture", et je cherche à lui assigner une macro
"Modif_facture".
Le code "snippet" fonctionne très bien, à savoir qu'il change bien
l'assignation de mon bouton "Modifier" (et seulement de celui-là) dans mon
document facture (et seulement dans ce document).
Par contre le bouton est inopérant.
Mais, si je ferme mon document facture et que je l'ouvre à nouveau, le
bouton fonctionne correctement !

J'aimerais évidemment ne pas avoir à "Fermer/ouvrir" pour avoir accès à mon
bouton !

D'avance merci,

Martin

P.S. je viens de recevoir votre bouquin; je vais pouvoir occuper mes longues
soirées d'hivers ! :-)



----- Original Message ----- 
From: "Bernard Marcelly" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Thursday, February 10, 2005 11:39 AM
Subject: Re: [prog] accéder à un bouton depuis le code


> Bonjour,
> Le snippet signalé par Laurent affecte un même traitement à tous les
> boutons du formulaire.
> J'ai réussi à affecter un traitement à un bouton donné, en m'inspirant
> des pages 572-574 et604-605 du bouquin Programmation OpenOffice.org
> Au lieu du code du snippet, écrire ceci :
>
>
>   oDocument = StarDesktop.getCurrentComponent
>     oView = oDocument.CurrentController
>     oDrawPage = oView.getActiveSheet.DrawPage
>
>     ' get the first form
>     oForm = oDrawPage.getForms.getByIndex(0)
>
> Dim modeleBouton As Object, monBouton As Object
> Dim ecouteur As Object
>
> modeleBouton = oForm.getByName("Bouton1")
> monBouton = oView.GetControl(modeleBouton)
> ecouteur = CreateUnoListener("monBouton1_",
> "com.sun.star.awt.XActionListener")
> monBouton.addActionListener(ecouteur)
>
>
> ' ------------- gestionnaires d'évènements ---
>
>
> Sub monBouton1_actionPerformed(evt As Object)
> MsgBox("C'est moi, le bouton !")
> End Sub
>
> Sub monBouton1_disposing(evt As Object)
> End Sub
>
> *******
>
> A noter :
> La routine monBouton1_disposing est nécessaire même si on ne l'utilise
pas.
> L’afficheur de propriétés du contrôle Bouton ne « voit » pas le
> traitement de l’évènement.
> Le traitement est désactivé à la fermeture du document. La sauvegarde du
> document ne permet pas de mémoriser l'affectation de traitement à
> l'évènement. Peut-être qu'on peut améliorer.
>
>     Bernard
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


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

Répondre à