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 :

Problème de superposition


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut Problème de superposition
    Bonjour, je suis étudiant en informatique, et j'ai un projet à faire en java, en utilisant awt/swing.
    Voici comment j'ai organisé mon interface:
    - une barre de menu en haut de la fenetre
    - Un JSplitPane horizontal, qui divise la fenetre en deux parties (une partie que je nommerai "haut" et une partie que l'on appellera "bas").
    - un autre JSplitPane vertical, qui divise la partie "bas" en 2 parties ("droite" et "gauche")

    Voici mon problème:
    lorsque j'ajoute une JComboBox dans la partie "haute", et que je clique dessus pour la dérouler, on voit le contenu de la liste jusqu'à la limite de séparation entre la partie "haute" et la partie "basse". Or, j'aimerais que la liste continue par dessus la séparation et déborde si nécessaire sur la partie "basse". J'ai essayé de régler le problème en jouant sur les valeurs des z-index des composants, mais cela n'a pas fonctionné...

    Quelqu'un a-t-il une idée pour m'aider?
    Merci d'avance,

    David

  2. #2
    Membre Expert
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 013
    Par défaut
    Avec ce petit code, j'ai bien mon combobox qui passe au-dessus de la partie basse du splitpane
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
          final String s[] = { "un", "deux", "trois", "quatre", "cinq" };
          JComboBox myCombo = new JComboBox(s);
          JSplitPane splitBas = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,
                new JPanel(), new JPanel());
          JSplitPane splitGlobal = new JSplitPane(JSplitPane.VERTICAL_SPLIT,
                myCombo, splitBas);
          getContentPane().add(splitGlobal);
          pack();
          setLocationRelativeTo(null);

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut
    Merci de votre aide, mais c'est ce que j'ai fait dans mon projet. La seule différence, c'est que je n'ai pas ajouté la JComboBox directement, mais je l'ai insérée dans un JPanel. Cela pourrait-il être l'origine du problème?
    Vous pouvez voir en pièce jointe un aperçu de ce que cela me fait (regardez la liste déroulante des polices)
    Images attachées Images attachées  

  4. #4
    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
    Le problème vient du fait que tu as mélangé des composant Swing et AWT, et que les composants AWT( qui sont heavyweight) ne sont pas compatible avec le concept de ZOrder des composants Swing (qui sont lightweight).

    Remplaces donc ton Canvas par une Classe héritant de JComponent (pour faire du dessin sur cette classe il suffit de redéfinir la méthode paintComponent de cette classe, en lieu et place de la méthode paint de ton Canvas)

    ++

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 6
    Par défaut
    Merci de ton aide, ta solution me parait très intéressante.
    Je suis actuellement en cours, mais je teste cela ce soir dès que je rentre. Je te tiens au courant.

    Edit: Merci beaucoup, en effet cela fonctionne parfaitement à présent. Je ne savais pas qu'il était interdit de mélanger awt et swing, je le saurais pour la prochaine fois
    Merci encore et bonne journée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de superposition dans un formulaire
    Par vallica dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 17/01/2007, 15h20
  2. Problème de superposition d'éléments
    Par navis84 dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 20/10/2006, 12h00
  3. [C#] Problème de superpositions d'éléments avec MDI
    Par Gold.strike dans le forum Windows Forms
    Réponses: 2
    Dernier message: 24/07/2006, 15h18
  4. problème de superposition de calques
    Par crescendo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/05/2006, 17h27
  5. Problème de superposition de fenetre
    Par Raton dans le forum MFC
    Réponses: 14
    Dernier message: 28/07/2005, 20h57

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