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

 Java Discussion :

Fixer taille des composants


Sujet :

Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 49
    Points : 31
    Points
    31
    Par défaut Fixer taille des composants
    Bonjour a tous

    je debute et j'essaye de creer une interface simple pour le moment, en gros j'ai une JFrame et un Jpanel comme conteneur.
    j'ai mis une disposition Gridlayout avec 1 ligne et 4 colonnes.
    dans chaque colonne j'insere un JProgressBar mais le composant prend toute la place disponible meme si j'utilise Dimension X, Y.

    comment je peux fixer la taille de mes jauge

    merci

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    setMinimum/Maximum/PreferedSize sur les progressbar.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 49
    Points : 31
    Points
    31
    Par défaut
    merci pour ta reponse mais j'ai essayé et ça ne fonctionne pas tu aurais un exemple rapide car j'ai beau faire mes Jprogressbar reste tous de la meme taille

  4. #4
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Le plus simple serai que tu nous montre ton code pour que l'on puisse t'aider

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 149
    Points : 126
    Points
    126
    Par défaut
    Je pense que tu as utilisé un layout qui se charge de la taille de tes composants. Teste en retirant la ligne qui définit le layout pour ton panel et regarde si tes composants ont la taille voulue.

  6. #6
    Membre habitué
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2005
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 86
    Points : 174
    Points
    174
    Par défaut
    Hello philatex,

    Voici un petit exemple pour ce que tu veux faire, n'hésite pas à allez sur les tutoriels et la FAQ du site pour chercher

    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
     
     
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.GridBagConstraints;
    import java.awt.GridBagLayout;
    import java.awt.Insets;
     
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JProgressBar;
    import javax.swing.SwingUtilities;
    import javax.swing.border.LineBorder;
     
    public class TestFrame {
     
    	public static void main(String[] args) {
    		SwingUtilities.invokeLater(new Runnable() {
    			@Override
    			public void run() {
    				JFrame f = new JFrame("Test GridBagLayout");
     
    				f.getContentPane().add(new MonPanel(), BorderLayout.CENTER );
     
    				f.setSize(700, 300);
    				f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    				f.setVisible(true);
    			}
    		});
    	}
     
    }
     
     
     
    class MonPanel extends JPanel {
     
    	private static final long serialVersionUID = 1L;
     
    	private class MaProgressBar extends JProgressBar{
    		Dimension dim = new Dimension(140, 23);
     
    		public MaProgressBar() {
    			setMinimumSize(dim);
    			setMaximumSize(dim);
    			setPreferredSize(dim);
    			setBackground(Color.BLUE);
    			setBorder(new LineBorder(Color.BLACK));
    		}
    	}
     
    	public MonPanel() {
     
    		setLayout(new GridBagLayout());
     
    		GridBagConstraints gbc = new GridBagConstraints();
    		gbc.insets = new Insets(5, 5, 5, 5);
     
    		gbc.gridx = 0;
    		gbc.gridy = 0;
    		add(new MaProgressBar(), gbc);
     
    		gbc.gridx = 1;
    		gbc.gridy = 0;
    		add(new MaProgressBar(), gbc);
     
    		gbc.gridx = 2;
    		gbc.gridy = 0;
    		add(new MaProgressBar(), gbc);
     
    		gbc.gridx = 3;
    		gbc.gridy = 0;
    		add(new MaProgressBar(), gbc);
     
    	}
     
    }

  7. #7
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    Ton Panel est mis dans un BorderLayout en tant que Center -> Il prendra toute la taille

    Tes progressbar sont mise dans un GribBagLayout avec un fill mis à BOTH -> Elle prendront tout l'espace du gridbaglayout.

    Conclusion -> Elles prendront tous l'espace.
    met le fill à NONE et non pas à BOTH

  8. #8
    Membre habitué
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2005
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 86
    Points : 174
    Points
    174
    Par défaut
    Hello tchize,

    Citation Envoyé par tchize_ Voir le message
    met le fill à NONE et non pas à BOTH
    Ici tu as raison, j'ai juste oublié de virer le le fill car il ne sert à rien en cas de forçage de taille

    Citation Envoyé par tchize_ Voir le message
    Conclusion -> Elles prendront tous l'espace.
    Ici un peu moins elle ne prendons pas tous l'espace (J'ai testé le code) car il y a une forçage de la size : setMinimum/Maximum/PreferedSize.

    Merci pour ta remarque, je vire cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gbc.fill = GridBagConstraints.BOTH ;
    Awane

  9. #9
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    attention que les minimum/preferred/maximum size, ce sont juste des indications à l'attention du LayoutManager. Il n'est pas forcé de les respecter.

Discussions similaires

  1. Ajustement de la Taille des composants
    Par souminet dans le forum Débuter
    Réponses: 2
    Dernier message: 26/03/2008, 11h28
  2. Réponses: 7
    Dernier message: 15/05/2007, 16h54
  3. [Swing] Problème de placement et de taille des composants
    Par CrazySeb dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 22/04/2006, 14h56
  4. [Swing] Fixer la taille des composants
    Par Imladir dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 05/02/2006, 07h53
  5. [netbeans][Interfaces] réglage taille des composants
    Par tsinapah dans le forum NetBeans
    Réponses: 3
    Dernier message: 22/04/2005, 18h11

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