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
|
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Compteur extends JPanel implements ActionListener{
static int valeur = 0;
static JLabel type;
static JLabel nombre;
static JButton increment;
public Compteur(String titre){
type = new JLabel(titre, JLabel.CENTER);
nombre = new JLabel(Integer.toString(valeur), JLabel.CENTER);
nombre.setFont(new Font("Monospaced", Font.BOLD , 60));
increment = new JButton("++");
increment.addActionListener(this);
setLayout(new GridBagLayout());
ajout(type,0,0,2,1,0,0,GridBagConstraints.NONE,GridBagConstraints.CENTER);
ajout(nombre,0,1,2,2,0,0,GridBagConstraints.BOTH,GridBagConstraints.CENTER);
ajout(increment,0,3,2,1,0,0,GridBagConstraints.NONE,GridBagConstraints.CENTER);
}
private void ajout(Component composant,
int gridx, int gridy, int gridwidth, int gridheight,
int weightx, int weighty, int fill, int anchor) {
GridBagConstraints contrainte = new GridBagConstraints();
contrainte.gridx = gridx;
contrainte.gridy = gridy;
contrainte.gridwidth = gridwidth;
contrainte.gridheight = gridheight;
contrainte.weightx = weightx;
contrainte.weighty = weighty;
contrainte.fill = fill;
contrainte.anchor = anchor;
add(composant, contrainte);
}
public void actionPerformed(ActionEvent e) {
nombre.setText(Integer.toString(++valeur));
}
public static void main(String[] args) {
JFrame frame = new JFrame("A");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(new FlowLayout());
frame.add(new Compteur("Moutons"));
frame.add(new Compteur("Loups"));
frame.pack();
frame.setVisible(true);
}
} |
Partager