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 :

[ Swing ] Ajout de Container dans un autre Container


Sujet :

AWT/Swing Java

  1. #1
    Invité
    Invité(e)
    Par défaut [ Swing ] Ajout de Container dans un autre Container
    Bonjour,

    j'ai besoin de trois zones différentes dans mon application:
    Titre
    En-Tête
    Contenu
    Titre et En-Tête étendent Container
    Contenu etend JtabbedPane

    Dans mon constructeur de Titre et En-Tête j'ai add(new JLabel("test"));
    J'ajoute ces trois élements à à l'aide dans un GridBagLayout:
    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
    21
    22
    23
    24
    25
    26
     
    // Prépare les contraintes
    		GridBagConstraints c = new GridBagConstraints();
    		c.fill = GridBagConstraints.HORIZONTAL;
    		c.weightx = 0.5;
     
    		//Ajoute la zone de titre
    		c.gridx = 0;
    		c.gridy = 0;
    		c.anchor = GridBagConstraints.NORTH;
    		cont.add(new Titre(title),c);
     
    		//Ajoute l'en-tête
    		c.gridx = 0;
    		c.gridy = 1;
    		c.anchor = GridBagConstraints.CENTER;
    		cont.add(new EnTete(),c);
     
    		//Ajoute le contenu
    		c.gridx = 0;
    		c.gridy = 2;
    		c.anchor = GridBagConstraints.CENTER;
     
    		// Instancie le JTabbedPane (onglets)
    		onglets = new Content();
    		cont.add(onglets,c);
    Mes problémes :
    1° je n'ai pas le texte des JLabel de Titre et En-Tete
    2° mon contenu prend le minimum de hauteur .

    Mon but :
    Pouvoir afficher une zone de titre
    Pouvoir afficher des elements dans l'en-tête (boutons et listes)
    Avoir un JtabbedPane qui affiche l'essentiel de l'application et qui prend le maximum de largeur et de hauteur.

    Y à t'il mieux qu'en rajoutant des containers ?
    Comment ferriez-vous ?


    Merci beaucoup

    ps: le but est évidemment d'afficher plus qu'un JLabel dans le titre et l'en-tête.

  2. #2
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    Tu peux mettre le code de EnTete et Titre?
    Pour chaque langage existe une faq / N'oubliez pas de lire les règles du forum

  3. #3
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class EnTete extends Container{
     
    	public EnTete(){
    		add(new JLabel("Je suis l'en-tête"));
    	}
     
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class Titre extends Container{
     
    	public Titre(String title){
    		add(new JLabel(title));
    	}
     
    }

  4. #4
    Invité
    Invité(e)
    Par défaut
    dans la même idée.

    Je veux pouvoir ajouter un ensemble d'elements à un JtabbedPane..

    Exemple :
    Mon JTabbedPane contient un onglet "Demarche".
    Je crée uen classe Demarche qui doit contenir plusieurs JList.
    Que doit étendre Démarche pour pouvoir être ajouté dans mon JTabbedPane et contenir des composants ?

    Merci

  5. #5
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    Après l'ajout de tous des containers, t'as fait un validate() ?

    Pour ton ajout d'onglet, ton objet devrait être un Component
    Pour chaque langage existe une faq / N'oubliez pas de lire les règles du forum

  6. #6
    Invité
    Invité(e)
    Par défaut
    Ben au final j'ai étendu ce qui sera dans mon JTabbedPane avec Container et ça à l'air d'aller.


    Non pas de validate mais même avec, le résultat est le même...

  7. #7
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    Citation Envoyé par Blaise1
    Ben au final j'ai étendu ce qui sera dans mon JTabbedPane avec Container et ça à l'air d'aller.
    Tout marche??
    Pour chaque langage existe une faq / N'oubliez pas de lire les règles du forum

  8. #8
    Invité
    Invité(e)
    Par défaut
    Non, côté visuel ça foire toujours.

    Je n'ai toujours pas de label pour le titre ni pour l'en-tête.
    J'ai juste mon JtabbedPane avec son contenu qui prend toute la largeur mais le minimum de hauteur...

    Même si je fait
    setBackground(Color.CYAN); sur mon en-tête, je n'ai pas de couleur..

  9. #9
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    Etends tes classes Titre et EnTete à JPanel au lieu de Container
    Pour chaque langage existe une faq / N'oubliez pas de lire les règles du forum

  10. #10
    Invité
    Invité(e)
    Par défaut
    Oui ok, mais ces 3 elements sont toujours "centrés" au milieu de mon écran alors que je voudtais que titre et en-tête soient collés en haut et que le contenu prenne la place restante

  11. #11
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    Pour plus d'infos sur le layout va voir

    Notamment anchor qui peut avoir les valeurs suivantes:

    -FIRST_LINE_START
    -PAGE_START
    -FIRST_LINE_END
    -LINE_START
    -CENTER
    -LINE_END
    -LAST_LINE_START
    -PAGE_END
    -LAST_LINE_END
    Pour chaque langage existe une faq / N'oubliez pas de lire les règles du forum

  12. #12
    Invité
    Invité(e)
    Par défaut
    Ok, merci, je vais essayer tout ça.

Discussions similaires

  1. Un container dans un autre container
    Par talitrus dans le forum jQuery
    Réponses: 2
    Dernier message: 17/02/2012, 09h21
  2. [Swing] Ajouter des images dans JLabel
    Par stragaman dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 11/04/2007, 23h07
  3. Réponses: 3
    Dernier message: 27/03/2006, 22h53
  4. Ajouter un champ dans une autre base Access
    Par scaalp dans le forum Access
    Réponses: 2
    Dernier message: 20/10/2005, 15h34
  5. [Vector] Ajouter un Vector dans un autre Vector
    Par VinceFromBcn dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 30/06/2004, 21h54

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