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 :

Jbutton dans un autre JButton


Sujet :

AWT/Swing Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 90
    Par défaut Jbutton dans un autre JButton
    Bonjour,
    Est il possible de rajouter un boutton dans un autre boutton??
    J'ai teste mais ca me donne pas le resultat souhaite.
    merci

  2. #2
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Bonsoir, je ne pense pas que ça soit possible ou tout du moins ça ne me parait pas logique d'imbriquer des boutons.

    Quel est l'intéret de mettre un bouton dans un autre?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 90
    Par défaut
    En fait je voudrais avoir un boutton avec un nom a l interieur de dimension 100*15(environ) et mettre un autre Jbutton avec une croix (pour fermer l'application associe au boutton).

  4. #4
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Ce que tu peux faire comme je vois les choses c'est mettre tes deux JButton côte à côte. Sinon comment déterminer dans la zone de ton gros JButton sur lequel tu cliques? Ok pour la souris il y a moyen de récupérer les coordonnées du curseur mais avec un événement clavier??

    Donc à mon avis, la solution, c'est de faire deux boutons séparés mais pourquoi pas contenu dans un petit panneau.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 90
    Par défaut
    Ok,je pense que je vais faire cela.

  6. #6
    Membre éclairé Avatar de Spinoza23
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 328
    Par défaut
    Je ne pense pas que l'on puisse faire cela je suis désolé.

  7. #7
    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
    Sisi tu peux mettre un JButton dans un JButton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    JButton b1 = new JButton("toto");
    JButton b2 = new JButton("tata");
    b1.add(b2);

  8. #8
    Membre éclairé Avatar de Spinoza23
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 328
    Par défaut
    Ok ben si ca marche c'est cool. Désolé j'étais persuadé que non.

  9. #9
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    +1 errare sironimo est

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 90
    Par défaut
    Et peut on fixer les endroits ou seront les composants,
    Dans le boutton 1 j aurais un label (qui devra etre placer sur la gauche) et le boutton 2 (une petite image placer vers la gauche du boutton 1)

    Est ce possible??

  11. #11
    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
    JButton hérite de Container, donc possède bien la méthode setLayout.

    Donc pour un JButton tu feras pareil que pour un JPanel

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 90
    Par défaut
    Gracias sinok, v tester ca dessuite :p

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 90
    Par défaut
    Le probleme c'est qu'il se place mal.(bon je sais que ca vient de moi lol)
    J'utilise un boxlayout(x_axis) et je voudrais que mon label soit tout a gauche en ne depassant pas une certaine dimension et le bouton tout a droite .

  14. #14
    Membre éclairé Avatar de Spinoza23
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 328
    Par défaut
    essaye alors avec un GridBagLayout... peu etre que tu y arrivera mieux

  15. #15
    Membre chevronné Avatar de FredPsy
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2006
    Messages
    285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 285
    Par défaut
    Essayes avec ça, pour voir le résultat.
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
     
    import javax.swing.SwingUtilities;
    import java.awt.BorderLayout;
    import javax.swing.JPanel;
    import javax.swing.JFrame;
    import javax.swing.JButton;
     
    public class Test extends JFrame
        {
     
            private static final long serialVersionUID = 1L;
     
            private JPanel panel;
     
            private JButton btn1;
     
            private JButton btn2;
     
            /**
             * This method initializes btn1    
             *     
             * @return javax.swing.JButton    
             */
            private JButton getBtn1()
                {
                    btn1 = new JButton("Hello World");
                            btn1.setLayout(null);// Permet de positionner le btn2 où bon te semble avec un btn2.setBounds(x, y, width, height);
                            btn1.add(getBtn2());
                    return btn1;
                }
     
            /**
             * This method initializes btn2    
             *     
             * @return javax.swing.JButton    
             */
            private JButton getBtn2()
                {
                    btn2 = new JButton("Close");
                            btn2.setBounds(0, 0, 80, 20); // Position du bouton dans le premier bouton (Origine 0,0. Longueur 80, Largeur 20).
                    return btn2;
                }
     
            /**
             * @param args
             */
            public static void main(String[] args)
                {
                    // TODO Raccord de méthode auto-généré
     
                    SwingUtilities.invokeLater(new Runnable()
                        {
                            public void run()
                                {
                                    Test thisClass = new Test();
                                    thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                                    thisClass.setVisible(true);
                                }
                        });
                }
     
            /**
             * This is the default constructor
             */
            public Test()
                {
                    super();
                    initialize();
                }
     
            /**
             * This method initializes this
             * 
             * @return void
             */
            private void initialize()
                {
                    this.setSize(300, 200);
                    this.setContentPane(getPanel());
                    this.setTitle("JFrame");
                }
     
            /**
             * This method initializes panel
             * 
             * @return javax.swing.JPanel
             */
            private JPanel getPanel()
                {
                    panel = new JPanel();
                            panel.setLayout(new BorderLayout());
                            panel.add(getBtn1(), BorderLayout.CENTER);
                    return panel;
                }
     
        }
    Ca fonctionne. Mais où peut bien être l'intérêt d'imbriquer des boutons ?

    Bonne journée.

  16. #16
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Citation Envoyé par FredPsy
    Mais où peut bien être l'intérêt d'imbriquer des boutons ?
    Citation Envoyé par skwi6
    En fait je voudrais avoir un boutton avec un nom a l interieur de dimension 100*15(environ) et mettre un autre Jbutton avec une croix (pour fermer l'application associe au boutton)
    Je pense qu'il souhaite développer des boutons comme les onglets par exemple de Firefox avec la croix intégrée au composant.

  17. #17
    Membre chevronné Avatar de FredPsy
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2006
    Messages
    285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 285
    Par défaut
    A creuser comme idée.

    Dans ce cas, ne pourrait il pas utiliser un JTabbedPane et lui affecter le bouton ? (Je ne sais pas, j'ai pas testé la chose et je ne sais même pas si c'est faisable. A voir)

    Bonne journée.

  18. #18
    Membre chevronné Avatar de FredPsy
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2006
    Messages
    285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 285
    Par défaut
    J'ai fait quelques tests avec un JTabbedPane, apparement, ce n'est pas possible d'affecter un bouton dans l'onglet du JTabbedPane.

  19. #19
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par FredPsy
    J'ai fait quelques tests avec un JTabbedPane, apparement, ce n'est pas possible d'affecter un bouton dans l'onglet du JTabbedPane.
    Cela n'est possible qu'a partir de Java 6.0 et la méthode setTabComponentAt() qui permet de redéfinir le composant chargé d'afficher le titre de l'onglet...

    a++

  20. #20
    Membre chevronné Avatar de FredPsy
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2006
    Messages
    285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 285
    Par défaut
    Merci pour la réponse.

    J'ai fait un test et cela ne donne pas le rendu espéré. Je pensais qu'il ajouterai le Bouton dans l'onglet (c'est à dire là où il y a le titre de l'onglet, en haut) et pas à l'interieur de l'onglet.

    Aurais tu un exemple quelque part ?

    Bonne journée.

Discussions similaires

  1. [NB5]Ajout d'un JButton dans un JMenuBar ?
    Par Westy dans le forum NetBeans
    Réponses: 1
    Dernier message: 13/06/2006, 17h29
  2. Comment mettre un JButton dans une JTable
    Par vinceLeBarbare dans le forum Composants
    Réponses: 6
    Dernier message: 05/06/2006, 11h43
  3. Icon pour pour JButton dans une Jtable + pb colonnes
    Par dim_italia dans le forum Composants
    Réponses: 3
    Dernier message: 22/02/2006, 18h05
  4. Pb JButton dans un JLabel
    Par Ecco59 dans le forum Composants
    Réponses: 8
    Dernier message: 02/12/2005, 18h09
  5. [JTable] Un JButton dans une cellule
    Par Sarrus dans le forum Composants
    Réponses: 19
    Dernier message: 31/08/2005, 16h29

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