import javax.swing.*;
import
java.awt.event.*;
public class Class1 {
JFrame jf;
JButton jb;
public static void main( String[] args){
new
Class1();
}
Class1(){
jf
= new JFrame("Test");
/*entete*/
JLabel jl = new JLabel("TEST GUI",JLabel.CENTER);
/* bouton */
jb=new
JButton("Au revoir");
jf.getContentPane().add(jl);
jf.getContentPane().add(jb);
jf.setSize(320,200);
jf.show();
}
}
Résultat : on ne voit que le bouton qui prend 100% de l'espace. En effet, le panneau n'a pas de gestionnaire de placement.
import javax.swing.*;
import
java.awt.event.*;
public class Class2 {
JFrame
jf;
JButton jb;
public
static void main( String[] args){
new
Class2();
}
Class2(){
jf= new JFrame("Test");
/*entete*/
JPanel jpTitre=new JPanel();
JLabel jlTitre = new JLabel("TEST GUI",JLabel.CENTER);
jpTitre.add(jlTitre);
/* bouton */
JPanel
jpBouton=new JPanel();
jb=new JButton("Au revoir");
jpBouton.add(jb);
jf.getContentPane().setLayout(new BoxLayout(jf.getContentPane(),
BoxLayout.Y_AXIS));
jf.getContentPane().add(jpTitre);
jf.getContentPane().add(jpBouton);
jf.setSize(320,200);
jf.show();
}
}
Avec un listener pour la sortie:
import javax.swing.*;
import
java.awt.event.*; /* listener */
import java.awt.*;
public
class Class4 extends JFrame implements ActionListener{
public Class4(){
/*entete*/
JPanel
jpTitre=new JPanel();
JLabel jlTitre = new JLabel("TEST GUI",JLabel.CENTER);
jpTitre.add(jlTitre);
/* bouton */
JButton
jb;
JPanel jpBouton=new
JPanel();
jb=new
JButton("Au revoir");
jb.addActionListener(this);
jpBouton.add(jb);
getContentPane().setLayout(new BoxLayout(getContentPane(),
BoxLayout.Y_AXIS));
getContentPane().add(jpTitre);
getContentPane().add(jpBouton);
}
public static void main( String[] args) {
Class4 c4 = new Class4();
c4.setSize(320,200);
c4.show();
}
public void
actionPerformed(ActionEvent e) {
System.exit(0);
}
}
Avec la JComboBox:
import javax.swing.*;
import
java.awt.event.*; /* listener */
import java.awt.*;
import
java.util.*;
public class Class4 extends JFrame implements
ActionListener,ItemListener{
JPanel
jpTitre;
JLabel jlTitre;
JButton jb;
JPanel jpBouton;
JPanel jpCombo;
JComboBox jcb;
JLabel jlChoix;
public Class4(){
/*entete*/
jpTitre=new
JPanel();
jlTitre = new
JLabel("TEST GUI",JLabel.CENTER);
jpTitre.add(jlTitre);
/* bouton */
jpBouton=new JPanel();
jb=new JButton("Au revoir");
jb.addActionListener(this);
jpBouton.add(jb);
jpCombo=new JPanel();
Vector v=new Vector();
v.addElement("choix a");
v.addElement("choix b");
v.addElement("choix c");
jcb=new JComboBox(v);
jcb.addItemListener(this);
jlChoix=new JLabel();
jpCombo.setLayout(new BoxLayout(jpCombo,BoxLayout.X_AXIS));
jpCombo.add(jcb);
jpCombo.add(jlChoix);
getContentPane().setLayout(new BoxLayout(getContentPane(),
BoxLayout.Y_AXIS));
getContentPane().add(jpTitre);
getContentPane().add(jpBouton);
getContentPane().add(jpCombo);
}
public static void main( String[] args) {
Class4 c4 = new Class4();
c4.setSize(320,200);
c4.show();
}
public void
actionPerformed(ActionEvent ae) {
System.exit(0);
}
public
void itemStateChanged(ItemEvent ie) {
jlChoix.setText(jcb.getSelectedItem().toString());
}
}