TP3 Les interfaces graphiques

Telechargé par zakaria bak
Année scolaire : 2022/2023
Matière : Java
Enseignant : Afraites Chapitre : Les interfaces graphiques
EX1 : Solution : (bouton et label)
Class FenLabel
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class FenLabel extends JFrame implements ActionListener {
public FenLabel() {
setTitle("Essais Etiquettes");
setSize(300, 120);
Container contenu = getContentPane();
contenu.setLayout(new FlowLayout());
bouton = new JButton("COMPTEUR");
bouton.addActionListener(this);
contenu.add(bouton);
nbClics = 0;
compte = new JLabel("nombre de clics sur COMPTEUR = " + nbClics);
contenu.add(compte);
}
public void actionPerformed(ActionEvent e) {
nbClics++;
compte.setText("nombre de clics sur COMPTEUR = " + nbClics);
}
private JButton bouton;
private JLabel compte;
private int nbClics;
}
Class Test
import javax.swing.JFrame;
public class EX1_TP3_A {
public static void main(String[] args) {
JFrame fen = new FenLabel() ;
fen.setVisible(true) ;
}
}
EX2 : (bouton et label)
Class FenLabel
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class FenLabel extends JFrame implements ActionListener {
public FenLabel() {
setTitle("Essais Etiquettes");
setSize(300, 120);
Container contenu = getContentPane();
contenu.setLayout(new FlowLayout());
bouton1 = new JButton("Incrementer");
bouton2 = new JButton("decrementer");
bouton1.addActionListener(this);
bouton2.addActionListener(this);
contenu.add(bouton1);
contenu.add(bouton2);
nbClics = 0;
compte = new JLabel("nombre de clics sur COMPTEUR = " + nbClics);
contenu.add(compte);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == bouton1) {
nbClics++;
} else if(e.getSource() == bouton2) {
nbClics--;
}
compte.setText("nombre de clics sur COMPTEUR = " + nbClics);
}
private JButton bouton1;
private JButton bouton2;
private JLabel compte;
private int nbClics;
}
Class Test
import javax.swing.JFrame;
public class EX2_TP3_A {
public static void main(String[] args) {
JFrame fen = new FenLabel() ;
fen.setVisible(true) ;
}
}
Ex3 : Champ de texte et événements Action et Focus
Class MaFenetre
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class MaFenetre extends JFrame implements ActionListener {
public MaFenetre() {
setTitle("Carres");
setSize(400, 100);
Container contenu = getContentPane();
contenu.setLayout(new FlowLayout());
labNombre = new JLabel(etiqNombre);
contenu.add(labNombre);
nombre = new JTextField(10);
contenu.add(nombre);
boutonCalcul = new JButton("CALCUL");
contenu.add(boutonCalcul);
boutonCalcul.addActionListener(this);
labCarre = new JLabel(etiqCarre);
contenu.add(labCarre);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == boutonCalcul)
try {
String texte = nombre.getText();
int n = Integer.parseInt(texte);
long carre = (long) n * (long) n;
labCarre.setText(etiqCarre + carre);
} catch (NumberFormatException ex) {
nombre.setText("");
labCarre.setText(etiqCarre);
}
}
private JLabel labNombre, labCarre;
private JTextField nombre;
private JButton boutonCalcul;
static private String etiqNombre = "Nombre : ", etiqCarre = "Carre : ";
}
Class Test
public class EX3_TP3_A {
public static void main(String[] args) {
MaFenetre fen = new MaFenetre();
fen.setVisible(true);
}
}
Avec FocusListener
Class MaFenetre
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class MaFenetre extends JFrame implements ActionListener, FocusListener {
public MaFenetre() {
setTitle("Carres");
setSize(400, 100);
Container contenu = getContentPane();
contenu.setLayout(new FlowLayout());
labNombre = new JLabel(etiqNombre);
contenu.add(labNombre);
nombre = new JTextField(10);
contenu.add(nombre);
nombre.addFocusListener(this); // pour la perte de focus
nombre.addActionListener(this); // pour la validation
labCarre = new JLabel(etiqCarre);
contenu.add(labCarre);
}
public void actionPerformed(ActionEvent e) {
1 / 6 100%

TP3 Les interfaces graphiques

Telechargé par zakaria bak
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !