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

AWT/Swing Java Discussion :

Fenetre vide


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Paniez
    Homme Profil pro
    Communication & Webservices
    Inscrit en
    Janvier 2003
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Communication & Webservices
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 186
    Par défaut Fenetre vide
    Bonjour,

    J'ai un soucis avec les interfaces graphiques (SWING) qui commencent à me ... enfin bref.

    De façon générale, il arrive que mes fenêtres apparaissent, mais vides ; j'ai bien le border avec la croix pour fermer, mais sans contenu, ni titre de fenêtre.

    Celà arrive de temps en temps (je n'ai pas remarqué de cycles ou d'éléments déclenchant ce problème), que ce soit pour des fenêtre contenant que deux JButton ou beaucoup plus complexes, et même pour des popup (JOptionPane.showMessageDialog...).
    De plus, ce problème apparait aussi bien quand je code (sous Eclipse) que lorsque je l'exécute directement du jar (sous Windobe ou Linux).

    Au point de vue ressource, mon processeur (Core 2 duo à 1.66Ghz) est utilisé qu'à hauteur de 12% et la RAM (2Go) à hauteur de 40%, ce qui me laisse à penser que le problème ne vient pas de là.

    A titre indicatif, je suis sous Linux (Ubuntu 7.10).


    Si quelqu'un a une idée ...

  2. #2
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Peut-être tu fais beaucoup de choses hors de l'EDT, ce qui provoque de gros problèmes. Renseigne toi sur l'Event Dispatch Thread.

  3. #3
    Membre confirmé Avatar de Paniez
    Homme Profil pro
    Communication & Webservices
    Inscrit en
    Janvier 2003
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Communication & Webservices
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 186
    Par défaut
    Salut,

    J'ai changé un peu ma manière d'instancier mes objets (graphiques surtout) pour ne pouvoir faire le JFrame.pack en dernier (enfin, être sur surtout).

    Le problème ne se posant plus, j'ai supposé que c'était bon. Or cela est revenu, certes moins souvent, mais c'est revenu peu de temps après.

    Du coup, j'ai une question (peut-être idiote) :
    si j'ai des JOptionPane, faut-il les instancier également des le début (et donc avant mon JFrame.pack), ou cela n'a aucune incidence, ou faire une sorte de SwingUtilities.invokeLater(JOptionPane); ??

    Merci d'avance

  4. #4
    Membre chevronné Avatar de ngpub
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 449
    Par défaut
    Citation Envoyé par Paniez Voir le message
    si j'ai des JOptionPane, faut-il les instancier également des le début (et donc avant mon JFrame.pack), ou cela n'a aucune incidence
    La méthode pack() utilise tous les éléments présents dans l'affichage pour redimensionner la fenêtre, donc si les JOptionPane doivent être présents dans l'affichage, il faut les placer avant l'appelle de pack().

    Citation Envoyé par Paniez Voir le message
    ou faire une sorte de SwingUtilities.invokeLater(JOptionPane);
    SwingUtilities.invokeLater permet de placer un Objet runnable dans le thread qui gère l'affichage, donc "SwingUtilities.invokeLater(JOptionPane);" ne veut rien dire (ça ne doit même pas passer la compilation).

    Quant-à ton problème d'affichage, ça ressemble plus à un simple de problème de dimension de fenêtres non renseignées. Tu peux faire un setSize après chaque initialisation de chaque fenêtre, elles auront au moins une taille d'affichage par défaut.

  5. #5
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Qui dit ubuntu dit Compiz, qui dit Compiz me fait dire de mettre à jour ta version de java pour la dernière update de java 6 (ou alors d'utiliser IcedTea en tant que version de java).

    Compiz a posé à son apparition pas mal de problème avec AWT/Swing

  6. #6
    Membre confirmé Avatar de Paniez
    Homme Profil pro
    Communication & Webservices
    Inscrit en
    Janvier 2003
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Communication & Webservices
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 186
    Par défaut
    Citation Envoyé par sinok Voir le message
    Qui dit ubuntu dit Compiz, qui dit Compiz me fait dire de mettre à jour ta version de java pour la dernière update de java 6 (ou alors d'utiliser IcedTea en tant que version de java).

    Compiz a posé à son apparition pas mal de problème avec AWT/Swing
    Salut,
    Côté java, je suis en java version "1.6.0_03" ; de plus, ce problème apparait également sous windobe ... (du coup, je doute de cette piste).

    Sinon, j'ai commencé à regarder l'EDT ; je dois changer/bouger pas mal de code (vu que j'instanciais certaines choses qu'à un certain moment, et non pas avant le Jframe.pack ), je fais ça au fur et à mesure.

Discussions similaires

  1. une nouvelle fenetre vide se genere!
    Par amoula84 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 27/04/2009, 11h36
  2. [Forms 9.0.4] Fenetre vide avec juste le menu?
    Par Aeternus dans le forum Forms
    Réponses: 7
    Dernier message: 22/06/2007, 15h11
  3. [MacOSX] wxFileDialog Fenetre Vide
    Par AuraHxC dans le forum wxWidgets
    Réponses: 2
    Dernier message: 05/03/2007, 23h25
  4. Mega débutant, fenetre vide (swing)
    Par gloubi dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 03/08/2006, 23h59
  5. LNK1201 en voulant afficher une fenetre vide
    Par 180degrés dans le forum MFC
    Réponses: 3
    Dernier message: 18/08/2005, 00h17

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