IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Interfaces Graphiques en Java Discussion :

Problème raffraichissement de la barre de notification avec Open Office


Sujet :

Interfaces Graphiques en Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 9
    Points : 8
    Points
    8
    Par défaut Problème raffraichissement de la barre de notification avec Open Office
    Bonjour ,

    Dans mon appli Java, je redémarre Open Office pour pallier à son problème de gonflement mémoire, le problème que j'ai c'est qu'à chaque redémarrage j'ai un icône open office qui apparait dans la barre de notification, j'ai beau faire un notify du system tray, rien n'y change.

    Auriez vous une petite idée voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    SystemTray tray = java.awt.SystemTray.getSystemTray();
     
           try {
    		Process process = Runtime.getRuntime().exec( "taskkill /T /F /IM soffice.bin" );// Arretes Open Office
    		process.waitFor();
    		Thread.sleep( 500 );
     
    		try {
    			     synchronized ( tray ) {
    				                            tray.notify();
    			                                  }
    		      } catch ( Exception e ) {
    				e.printStackTrace();
    		      }
     
    		process = Runtime.getRuntime().exec( "quickstart" );
    		} catch ( Exception e ) {
    			e.printStackTrace();
    		}
    	}

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Cette icône correspond certainement à un processus réellement vivant ?
    Peut-être faudrait-il régler la cause du gonflement mémoire, et pas sa conséquence ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 9
    Points : 8
    Points
    8
    Par défaut Petite précision
    Ce bug est inhérent à l'Api d'Open Office et est référencé depuis 2004 dans leur base d'erreur mais n'est pas encore corrigé, ils disent de redémarrer Open Office pour corriger cela.
    C'est une solution moyenne en effet mais depuis des années que l'on bataille dessus on as que cette solution.
    Ces icônes sont des processus morts car quand je passe la souris dessus la barre de notification se rafraichis bien et je me retrouve avec seulement un icône Open Office.
    Ce que je voudrait c'est arrivé à faire cela directement dans le code Java sans passer la souris.

    Merci

  4. #4
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    C'est dépendant du système hôte. A ma connaissance, il n'existe rien en Java pour traiter ce problème. Même en natif, je ne vois pas comment faire, mais c'est de toute façon la voie à suivre.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  5. #5
    Membre chevronné
    Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    2 126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2008
    Messages : 2 126
    Points : 2 237
    Points
    2 237
    Par défaut
    Citation Envoyé par tomatoes Voir le message
    Ce bug est inhérent à l'Api d'Open Office et est référencé depuis 2004 dans leur base d'erreur mais n'est pas encore corrigé, ils disent de redémarrer Open Office pour corriger cela.
    C'est une solution moyenne en effet mais depuis des années que l'on bataille dessus on as que cette solution.
    Ces icônes sont des processus morts car quand je passe la souris dessus la barre de notification se rafraichis bien et je me retrouve avec seulement un icône Open Office.
    Ce que je voudrait c'est arrivé à faire cela directement dans le code Java sans passer la souris.

    Merci
    Bonjour,

    C'est loin d'être spécifique à OpenOffice, ça semble être un petit bug de Windows, depuis les années 90 c'est-à-dire depuis le début. Je n'ai jamais beaucoup creusé, il faudrait le faire dans un forum de développement pour Windows, et bon courage.
    D'autres programmes ont un problème plus ennuyeux : lorsqu'on redémarre explorer et donc qu'on réinitialise la zone de notification, leurs icônes ne réapparaissent pas automatiquement. Il faut donc arrêter ces programmes un par un, et les redémarrer. J'en ai trois sous XP, j'ai donc intégré tout ça dans un batch pour faciliter le redémarrage. Pour éviter de garder une fenêtre de lignes de commandes ouverte longtemps, je l'exécute en asynchrone, il a fallu programmer quelque chose pour ça.

    Mais là je ne parle plus de redémarrer Office, mais de redémarrer explorer, le sujet commun étant bien la gestion des icônes dans la zone de notifications. Mais effectivement, j'ai remarqué souvent que lorsqu'un programme a une icône dans la zone de notifications, si je le ferme ça ne fait pas immédiatement disparaître l'icône, le rafraîchissement se fait seulement au passage de la souris.

    J'ai l'impression que creuser ça au niveau d'une application risque de durer très longtemps, puisque le problème semble se situer plutôt au niveau du système. Ou alors, une idée qui vient comme ça : émuler le passage de la souris ?

  6. #6
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    En tout cas, c'est certainement pas avec un notify() que tu pourrais faire ça : cette méthode n'a rien à voir à le systray, il s'agit d'une méthode de la classe Object, qui fonctionne en echo de la méthode wait() (qui bloque un thread), pour envoyer un signal de déblocage. C'est un système interne à Java. Le SystemTray de Java d'ailleurs doit être également une abstraction complètement déconnectée du systray Windows.

    Pour simuler le passage de la souris, tu peux tenter avec la classe java.awt.Robot. Regarder aussi du côté des fonctions Windows, à appeler avec JNA. Est-ce que le fait d'ajouter une icône dans le systray puis de la retirer ne permet-il pas de forcer un rafraîchissement et de contourner ainsi facilement le bug.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  7. #7
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 075
    Points : 7 981
    Points
    7 981
    Par défaut
    Citation Envoyé par Gluups Voir le message
    ça semble être un petit bug de Windows, depuis les années 90 c'est-à-dire depuis le début.
    Un bug des années 90, non mais, ... c'est une Feature voyons...
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre chevronné
    Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    2 126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2008
    Messages : 2 126
    Points : 2 237
    Points
    2 237
    Par défaut
    Evidemment : c'est "by design".

Discussions similaires

  1. Problème longeur de la barre de navigation avec Warsaw
    Par ophelie25 dans le forum Beamer
    Réponses: 2
    Dernier message: 16/09/2010, 15h39
  2. Ouvrir fichier .mdb avec open Office
    Par SpaceFrog dans le forum Access
    Réponses: 1
    Dernier message: 28/01/2010, 13h51
  3. [OpenOffice][Texte] Comment les images sont-elles stockées avec open office?
    Par LGnord dans le forum OpenOffice & LibreOffice
    Réponses: 0
    Dernier message: 26/06/2009, 14h21
  4. [VB6] publipostage avec Open Office
    Par jfdmagic dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 02/06/2009, 19h33
  5. Peux-t'on exécuter des macros excel avec Open Office
    Par Lexot2 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/09/2006, 22h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo