Francois Gatto a écrit :
Bonjour,

Pinsuto a écrit :
Francois Gatto a écrit :
Bonjour,

Pinsuto a écrit :
Je suis particulièrement intéressé par ce fil de discussion et d'avance merci aux contributeurs.

Pour ma part, je cherchais à lancer une application CALC en faisant disparaître la barre de statut, les barres de menu. Après lancement il ne devait rester que la barre de menus et le cadre Windows.

Avec les méthodes proposées, je rencontre les problèmes suivants.

-- Mon fichier Calc effectue des calculs à l'ouverture. Du coup, la barre de statut s'agite. Au final, après lancement de la macro, il reste une barre grise vide qui gelée.


Si tu le peux, place ton fichier ici http://www.cijoint.fr/

-- Si je transmets ce fichier à d'autres utilisateurs, il faut que j'utilise une macro qui rétablit la configuration initiale du poste sur lequel est utilisé mon fichier.


Existe-t-il donc un moyen pour neutraliser la barre de statut, fermer les barres d'icône au lancement de mon fichier Calc.

Voir exemple ci-après.

 Puis à sa
fermeture, rétablir la configuration telle qu'elle était sur le poste ?

En assignant la macro aux évènements Activation / Desactivation du document, je pense que tu résoudras ton problème.





Voici un début :

Sub BarOnOff
  '### Documentation ###

'http://api.openoffice.org/docs/common/ref/com/sun/star/frame/XLayoutManager.html
  'http://wiki.services.openoffice.org/wiki/Framework
  Dim oLayout as object
  Dim sToolBar as String
  Dim sStatusBar as String
  Dim sMenuBar as String

  sToolbar = "private:resource/toolbar/standardbar"
  sStatusBar = "private:resource/statusbar/statusbar"
  sMenuBar = "private:resource/menubar/menubar"

  oLayout = ThisComponent.CurrentController.Frame.LayoutManager

  If oLayout.isElementVisible( sMenuBar ) Then
    oLayout.hideElement( sMenuBar )
    Else
    oLayout.showElement( sMenuBar )
  End If
End Sub


Francois

Génial, merci ça marche pratiquement en entier.


Super !

Alors pour faire profiter les autres de mon expérience je précise la chose suivante : - pour que la macro s'exécute au démarrage et en quittant, je l'ai assigné sur "ouverture de document" et "fermeture de document" (attention au "de").

Ok.

- on peut agir sur toutes les barres, sauf sur la barre de formule. Je n'ai pas trouvé le moyen par cette voie pour la faire disparaître pui réapparaître. C'est un cas à part manifestement. Ou bien il faut passer par des fonctions trop complexes pour moi qui n'ont pas la souplesse de ce que tu m'as proposé ici.

Je n'ai pas testé cela. Si j'ai du temps ...


Si quelqu'un a une idée pour l'InputLine, r je crois que c'est son type,, je suis toujours preneur en vue d'améliorer mon petit projet.


Je ne comprends pas ce que tu veux avec "une idée pour l'InputLine".
Peux tu préciser ?

Francois
Oui pardon, j'ai pas été précis là.

L'inputline est la barre de formules. On ne peut pas exercer de contrôle sur son apparition ou sa disparition aussi facilement...

Voilà ce que donne une macro réalisée avec l'enregistreur de macro d'Open Office.


sub Main
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "InputLineVisible"
args1(0).Value = false

dispatcher.executeDispatch(document, ".uno:InputLineVisible", "", 0, args1())

end sub

Quoiqu'il en soit, l'apparition et la réapparition de mes barres d'outilssemble poser des problèmes sur mon fichier calc. Il est bien trop lourd. Dommage car ça fonctionne correctement quand le fichier est assez léger.
Je vais m'orienter vers la solution du plein écran.

Merci à chacun pour l'aide apportée ici. En espérant avoir moi-même apporté un peu de ma contribution.


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

Répondre à