Bonjour Bob,

Ton code est meilleur que ma solution par boucle car il occupe moins de 
ressource.

Maintenant je cherche un moyen d'intercepter l'événement qui correspond à 
l'appui sur la croix de la barre de la fenêtre via la méthode 
"XTopWindowListener".

J'ai trouvé un sujet de Pitonyak sur ça :
http://api.openoffice.org/servlets/ReadMsg?listName=dev&msgNo=7471

En tout cas merci car ton code permettant de réaliser une fenêtre-menu qui, 
dans mon application, sert de support pour insérer des extraits de texte dans 
un document Writer.

En attendant j'ai mis un bouton "masquer" dans la boîte de dialogue...

Gwénaël


> Bonsoir Gwenael,
>
> Ce soir, j'ai essayé d'avancer à nouveau sur ce problème de boite
> "non-modal"
>
> une autre piste interessante :
> http://www.oooforum.org/forum/viewtopic.phtml?t=31010
>
> Apparament, en initialisant le Model de la boite de dialogue avec
> "com.sun.star.awt.UnoControlDialogModel", setVisible affiche la boite de
> façon permanente.
> Ne me demande pas pourquoi ce comportement, j'ai essayé de trouver une
> explication rationnelle dans l'api, mais sans succès :-(
>
> Je me suis inspiré de ce post pour écrire le code suivant :
> ------------------------------------------------------------------------
>
> global oDialogControl as object
>
> sub DailogVisible
> DialogLibraries.loadLibrary("Standard")
> if isNull(oDialogControl) then
> oDialogModel = createUnoService(
> "com.sun.star.awt.UnoControlDialogModel" )
> oDialogControl = createUnoDialog(DialogLibraries.Standard.Dialog1)
> ' rmq: si tu commentes la ligne ci-dessous, setVisible ne rend la
> fenêtre visible que durant un temps de rafraichissement, comme tu l'as
> constaté
> oDialogControl.setModel( oDialogModel )
> end if
> oDialogControl.setVisible(true)
> end sub
>
> ' sub associée à un bouton "Fermer"
> sub DailogInVisible
> oDialogControl.setVisible(false)
> end sub
>
> ------------------------------------------------------------------------
>
> Dans le cas, de mon application, le fait d'initialiser le Model à
> "com.sun.star.awt.UnoControlDialogModel" pose problème:-( Je n'arrive
> plus à accéder aux contrôles par leur nom !!!
>
> Si tu avance sur le sujet, tiens nous au courant
>
> Bonne nuit
>
> Bob

Envoyez vos cartes de voeux depuis www.laposte.net
Elles seront ensuite distribuées par le facteur : pratique et malin !

Répondre à