L'alignement JButton à droite
Je suis la création d'une interface en java et je veux aligner le bouton vers la droite. J'ai essayer mais sa ne fonctionne pas. Quelqu'un peut me dire comment faire?
import java.awt.Color;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Button_Alignment extends JFrame{
public JPanel header,body,footer;
public JButton add1;
public JButton save;
public Button_Alignment(){
super("BUTTON");
GridLayout g1 = new GridLayout(3,1);
setLayout(g1);
//////
header = new JPanel();
JButton add1 = new JButton("add");
header.add(add1);
JButton save = new JButton("save");
header.add(save);
//////
add(header);
header.setBackground(Color.cyan);
}
public static void main(String[] args){
Button_Alignment ba = new Button_Alignment();
ba.setSize(400, 400);
ba.setVisible(true);
}
}
Utiliser un gestionnaire de présentation.
OriginalL'auteur Ravi77 | 2012-01-23
Vous devez vous connecter pour publier un commentaire.
Votre layout manager (
GridLayout
) est créé avec 3 lignes et une seule colonne. Par conséquent, les éléments que vous ajoutez à laJFrame
apparaît verticalement de haut en bas. Pire encore,GridLayout
sera petite apartie de l'espace également parmi tous les 3 des composants, ce qui signifie que vos boutons extensible dans les deux sens, ce qui est presque certainement pas ce que vous avez besoin.Je considère l'aide d'une autre disposition du gestionnaire. Pour de simples mises en page, j'ai tendance à privilégier
BorderLayout
ouFlowLayout
. Pour plus d'aménagements complexes je me penche versGridBagLayout
bien qu'il y a d'autres qui préfèrentMigLayout
.Plus d'informations ici.
Une fois que vous familiariser avec elle, le GridBagLayout n'est pas si difficile, et offre un degré élevé de flexibilité. Comme je l'ai dit si il y a d'autres qui préfèrent MigLayout.
mec je l'ai eu:) Merci à vous tous pour votre aide:) j'ai utilisé FlowLayout et puis j'ai aligné à droite.
OriginalL'auteur Adamski
Essayer comme ceci:
OriginalL'auteur Radu Murzea
vous définissez
GridLayout
à laJFrame
constructeur au lieu deJPanel
(Composite a par défautFlowLayout
), je pense queavis ---> mais
GridLayout
en courantComponentOrientations
commencer à partir de la gauche vers la droite,then 3rd. grid is empty
alors seulement ajouter
JFrame#add(JPanel)
, dans votre casOriginalL'auteur mKorbel
Un rapide et sale façon est de placer le bouton [ou un récipient immédiatement enveloppant le bouton, si vous voulez ajouter d'autres composants sur le côté droit de votre bouton] dans un récipient qui utilise le
BorderLayout
et l'utilisation de laBorderLayout.EAST
contrainte de mise en page pour que le bouton [ou emballage conteneur].OriginalL'auteur Unai Vivi