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 :

Positionnement d'un JButton dans un JPanel


Sujet :

Agents de placement/Fenêtres Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Ingénieur
    Inscrit en
    Janvier 2009
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : Janvier 2009
    Messages : 209
    Par défaut Positionnement d'un JButton dans un JPanel
    Bonsoir ,

    Je développe une IHM en utilisant Swing , j'ai un probleme de positionnement des JButton sur les JPanel .
    Ci-joint : le code + le screenshot ( Je n'arrive pas à positionner les deux boutons " Gauche/Droite " au milieu de l'axe Y ) . J'ai utilisé la methode " setBounds " mais en vain .
    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
    97
    98
    99
    100
    101
    102
    103
    104
    105
     
     
    import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.awt.FlowLayout;
    import java.awt.Toolkit;
     
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JSplitPane;
    import javax.swing.JTabbedPane;
     
    public class FenetrePrin {
     
    	JPanel contenuFenetre ; 
    	JButton btnDr ; 
    	JButton btnGa ;
    	JButton btnHa ;
    	JButton btnBa ;
    	JPanel GroupBtn ; 
    	JLabel lblMap ; 
    	JButton test ; 
    	FenetrePrin(){ 
     
    		// Recupération des dimensions de l'ecran 
    		JFrame frm = new JFrame();
    		Toolkit tk = frm.getToolkit(); 
    		Dimension dim = tk.getScreenSize(); 
    		int width = dim.width; 
    		int height = dim.height; 
    		//System.out.println("dimension : " + w +"x" + h); 
    		//frm.setBounds(0,0,w,h);	
    		frm.setExtendedState(frm.MAXIMIZED_BOTH);
     
     
    		// Panel 1 contenant la Jtable a gauche et le Groupe de btn + Map a droite 
    		contenuFenetre = new JPanel();
    		BorderLayout dis = new BorderLayout();
    		contenuFenetre.setLayout(dis);
     
    		lblMap = new JLabel("Map");
    		JLabel lbl = new JLabel("Jtable");	
    		JTabbedPane tp = new JTabbedPane();
    		contenuFenetre.add("West",tp);
     
     
    		GroupBtn = new JPanel();
    		BorderLayout dip2 = new BorderLayout();
    		GroupBtn.setLayout(dip2);
    		btnDr = new JButton("Droite");
    		// btnDr.setPreferredSize(new Dimension(40,40));
    		btnGa = new JButton("Gauche");
    		btnBa = new JButton("Bas");
    		btnHa = new JButton("Haut");
    		// btnHa.setBounds(0, 0, 10, 20);
     
    		 // Serie de Panel pour les boutons se trouvant dans une GridLayout cela pour un meilleur positionnement 
    		JPanel PanelBtnDroite=new JPanel();
    		FlowLayout flD = new FlowLayout();
    		PanelBtnDroite.setLayout(flD);
    		btnDr.setBounds(0, height/2, 0, 0);
            PanelBtnDroite.add(btnDr);
     
     
    		JPanel PanelBtnHaut=new JPanel(); 
    		PanelBtnHaut.add(btnHa); 
    		JPanel PanelBtnBas=new JPanel(); 
    		PanelBtnBas.add(btnBa);
     
    		JPanel PanelBtnGauche=new JPanel(); 
    		PanelBtnGauche.add(btnGa);
    		// Fin des pannaux de Bouton ! 
     
    		// Ajout sur la gridLayout des pannaux contenant des boutons 
    		GroupBtn.add("West",PanelBtnGauche);
    		GroupBtn.add("East", PanelBtnDroite);
    		GroupBtn.add("South",PanelBtnBas);
    		GroupBtn.add("North",PanelBtnHaut);
    		GroupBtn.add("Center",lblMap);
    		contenuFenetre.add("East",GroupBtn);
    		// Split qui divise la fenetre en deux et en horizontal avec ajout des deux grands Groupes de Composants 
    		JSplitPane sp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,contenuFenetre,GroupBtn);
    		//sp.setOrientation(JSplitPane.HORIZONTAL_SPLIT );
    		//System.out.println(sp.getDividerLocation());
     
    		// Split au milieu par défaut ( lors de l'execution de l'application ) 
    		sp.setDividerLocation(width/2);
     
     
    		//System.out.println(width/2  + "\n" + height/2);
    		frm.setContentPane(sp);
    		//frm.setContentPane(tp);
    		//frm.pack();
    		//frm.setSize(300,400);
     
     
     
    		frm.setVisible(true) ;
     
    	}
     
     
    }
    Images attachées Images attachées  

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

Discussions similaires

  1. Positionnement d'un JButton dans un GridLayout
    Par adissa357 dans le forum Agents de placement/Fenêtres
    Réponses: 10
    Dernier message: 11/11/2013, 01h28
  2. positionner un .gif animé dans un JPanel Java
    Par carottebleue dans le forum Interfaces Graphiques en Java
    Réponses: 2
    Dernier message: 11/04/2013, 17h03
  3. Creation Jbutton dans Jpanel
    Par taitai83 dans le forum Composants
    Réponses: 6
    Dernier message: 13/10/2009, 13h13
  4. positionnement d'une image dans un jpanel
    Par isankem dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 26/06/2007, 23h35
  5. Réponses: 5
    Dernier message: 13/06/2006, 15h14

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