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

Agents de placement/Fenêtres Java Discussion :

Problème pour donner la même taille au JBouton


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 181
    Par défaut Problème pour donner la même taille au JBouton
    Bonjour,
    J'essaie de réaliser une calculatrice avec swing, J'utilise plusieurs panels et layout mais j'arrive pas a donner la même taille à mes JBoutons
    voila mon 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
    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
     
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.GridLayout;
     
    import javax.swing.BorderFactory;
    import javax.swing.BoxLayout;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.border.Border;
     
    public class Fenetre extends JFrame {
     
    	JPanel panel0 = new JPanel();
    	JPanel panel = new JPanel();
    	JPanel panel2 = new JPanel();
    Border b = BorderFactory.createLineBorder(Color.black);
    JLabel resultat = new JLabel("resultat");
     
     
    	Fenetre() {
     
    		this.setTitle("Calculatrice");
    		this.setVisible(true);
    		this.setSize(300, 300);
    		this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
    		this.setLocationRelativeTo(null);
    		resultat.setBorder(b);
    		resultat.setBackground(Color.WHITE);
    		this.panel0.setPreferredSize(new Dimension(50, 50));
    		this.panel.setPreferredSize(new Dimension(100, 100));
    		this.panel2.setPreferredSize(new Dimension(50, 50));
    		this.getContentPane().add(resultat, BorderLayout.NORTH);
     
    		panel0.setLayout(new GridLayout(4, 1, 5, 5));
    		panel0.add(new JButton("1"));
    		panel0.add(new JButton("4"));
    		panel0.add(new JButton("7"));
    		panel0.add(new JButton("0"));
    		this.getContentPane().add(panel0, BorderLayout.WEST);
     
    		panel.setLayout(new GridLayout(4, 2, 5, 5));
    		panel.add(new JButton("2"));
    		panel.add(new JButton("3"));
    		panel.add(new JButton("5"));
    		panel.add(new JButton("6"));
    		panel.add(new JButton("8"));
    		panel.add(new JButton("9"));
    		panel.add(new JButton("."));
    		panel.add(new JButton("="));
    		this.getContentPane().add(panel, BorderLayout.CENTER);
     
    		panel2.setLayout(new GridLayout(5, 1,5, 5));
    		panel2.add(new JButton("c"));
    		panel2.add(new JButton("+"));
    		panel2.add(new JButton("-"));
    		panel2.add(new JButton("*"));
    		panel2.add(new JButton("/"));
    		this.getContentPane().add(panel2, BorderLayout.EAST);
     
    	}
     
    }
    Voila le résultat que je souhaites avoir :
    Nom : 396562.png
Affichages : 264
Taille : 11,7 Ko


    Merci d'avance

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Pourquoi utilises tu 3 panel pour les touches ?

    Moi je ne vois que 2 groupements de touches (123456789.=) et (c+-*/).

    Tu auras certainement plus facile en en ayant que 2 pour commencer, mais tu auras toujours un probleme avec la taille des boutons du "centre". BorderLayout n'est probablement pas le bon layout pour faire cela comme tu le veux.
    (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

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 181
    Par défaut
    Oui c'est sur, mais comme ça les + - / * ne s'affiche que si j'agrandis la fenêtre.
    Concernant le problème de taille des boutons, une solution ?

  4. #4
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Citation Envoyé par dibax10 Voir le message
    Oui c'est sur, mais comme ça les + - / * ne s'affiche que si j'agrandis la fenêtre.
    Tu peut rajouter a la fin du constructeur l'instruction
    et regarde si ça ne va pas mieux dans un premier temp mais tu auras toujours un probleme avec la taille des boutons du "centre". BorderLayout n'est probablement pas le bon layout pour faire cela comme tu le veux.
    (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

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 181
    Par défaut
    Bonjour,

    Je suis désolé pour le retard, J'ai du test plusieurs trucs avant de revenir vers vous.

    Bon, la bonne nouvelle c'est que la méthode pack() a amélioré nettement mon interface. Cependant,les boutons du layout droit sont un peu plus petit que les autres je ne sais pas pourquoi, j'arrive pas à mettre un espace entre les deux panels, malgré que j'ai donné une grande taille pour la fenêtre avec setSize elle reste petite mais d'après ce que j'ai lu pack() paramètre la fenêtre selon les composants c'est le cas la ?

    Ce que j'ai essayé,j'ai donné des pixels a chaque BorderLayout ,j'ai essayé de travailler avec SpringLayout et FlowLayout,j'ai essayé de modifier les bordeurs de chaque panel aussi mais sans résultat.

    Voila la résultat que j'ai :

    Nom : Sans titre.png
Affichages : 232
Taille : 18,4 Ko

    D'avance Merci

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 181
    Par défaut
    J'ai supprimé un panel comme vous avez précisé

  7. #7
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Citation Envoyé par dibax10 Voir le message
    Cependant,les boutons du layout droit sont un peu plus petit que les autres je ne sais pas pourquoi
    Bah c'est logique, d'un coté t'as 4 bouton et de l'autre 5 ... a mettre dans le même espace, forcement, faut bien que quelque chose soit plus ecrasé quelques part
    (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 confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 181
    Par défaut
    Oui c'est sur, mais comment pourrais-je donner une taille plus grande à ma fenêtre ? Le problème d'espace entre les deux panels comment pourrais-je le régler aussi?

  9. #9
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 181
    Par défaut
    Je viens de réussir a ajouter des borders de tout les cotés
    Nom : Sans titre.png
Affichages : 259
Taille : 7,0 Ko

    Mais je n'arrives toujours pas a adapter la fenetre à la taille que je souhaites

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 08/02/2013, 11h03
  2. Donner la même taille à des élements float que leur conteneur
    Par ThibF dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 19/08/2010, 14h53
  3. problème pour fixer la taille des div dans template
    Par damien40 dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 24/05/2007, 11h05
  4. Bouton avec image - Problème pour la taille
    Par Sangdrax1604 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 18/10/2006, 14h32
  5. Problème pour différencier plusieurs select avec le même nom
    Par vallica dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 24/04/2006, 11h35

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