[PDF] [PDF] TD 7 IJA Les interfaces graphiques JAVA

Première bibliothèque graphique JAVA: AWT – Package java awt – Utilisation de code natif – Composants limités • Nouvelle bibliothèque: SWING – Package  



Previous PDF Next PDF





[PDF] Partie II Sujet Programmation Orientée Objet – TP Swing Résumé

On reprend le programme java obtenu à l'issue de l'exercice précédent On souhaite dessiner dans la zone centrale « panneauDessin » au lieu d'écrire comme 



[PDF] TD 7 IJA Les interfaces graphiques JAVA

Première bibliothèque graphique JAVA: AWT – Package java awt – Utilisation de code natif – Composants limités • Nouvelle bibliothèque: SWING – Package  



[PDF] Examen (avec document) Corrigé

24 fév 2009 · L'exercice 4 permet d'extraire les préférences à partir d'une classe Java Enfin, l' exercice 5 pro- pose une application Swing pour saisir les 



[PDF] Programmation événementielle & interfaces graphiques Java Swing

comment avoir plusieurs comportements avec un seul Listener ? import javax swing *; import java awt event *; public class BipBip extends JFrame implements  



[PDF] C Recanati Interface Graphique INFO2, 2013 Eléments de - LIPN

Eléments de correction pour le TP n° 1 Exercice 1 import java awt *; import javax swing *; public class Dessin extends JFrame { public static void main(String 



[PDF] Exercices de réalisation dinterfaces graphiques avec Swing sous

14 fév 2017 · Exercices sur Swing sous NetBeans - page 1 Exercices de Lorsque l' utilisateur clique sur le bouton Corriger, un corrigé de ses réponses s'affiche dans la zone de texte Aucune programmation en Java n'est nécessaire



[PDF] Corrections des exercices du livre Java pour les enfants - Anper95

23 avr 2012 · http://laurent-bernabe developpez com/tutoriel/java/corrige-exercices-java-pour- enfants/ C'est donc le cas pour les composants SWING/AWT



[PDF] Créer des interfaces utilisateurs avec Java et Swing

import javax swing *; import java awt *; public class Exemple1 { public static void main(String[] args) { JFrame frame = new JFrame(”exemple”); JButton button 



[PDF] Construction dinterfaces graphiques en langage Java Comparaison

On en donne ici une qui approche le plus possible la correction de la question précédente Cette solution utilise les classes externes Le code additionnel est en 



[PDF] L3 – Programmation Java TP Swing - Adrien Poupa

Préambule : Consignes communes à tous les TP : - Développement en Java 7 sous Eclipse - Sauf exception explicitement autorisée, tous les attributs seront 

[PDF] tp java interface graphique corrigé

[PDF] exercice interface java corrigé

[PDF] la fille de jannina

[PDF] typologie du changement

[PDF] changement imposé

[PDF] changement construit

[PDF] conduite du changement ppt

[PDF] changement prescrit définition

[PDF] pratiques de la conduite du changement comment passer du discours ? l action

[PDF] changement adaptatif

[PDF] exemple de conduite de changement en entreprise

[PDF] prendre conscience de soi est-ce devenir étranger ? soi corrigé

[PDF] etre etranger a soi meme

[PDF] prendre conscience de soi est ce devenir soi meme

[PDF] prendre conscience de soi est-ce devenir étranger ? soi introduction

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV1JAV - TD 9

Les interfaces graphiques

JAVA Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV2AWT & SWING •Première bibliothèque graphique JAVA: AWT -Package java.awt -Utilisation de code natif -Composants limités •Nouvelle bibliothèque: SWING -Package javax.swing -Plus riche et plus personnalisable -Ne remplace pas AWT mais fournit des composants plus performants

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV3Hiérarchie des composants

•Composants élémentaires -JLabel -JButton -JCheckbox -JRadioButton -JTextField -JTextArea •Composants complexes -ButtonGroup -JComboBox -JList -JScrollBar -JMenuBar -JPopupMenu• Les containers- JWindow

JFrame

JDialog

JFileDialog

- JPanel

Applet

- JTabbedPane Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV4Exercice •Réaliser une classe Appli qui affiche une fenêtre (JFrame) contenant un JButton

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV5Disposition des composants (1/2)

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV6Disposition des composants (2/2)

GridLayoutBorderLayout

JFrame fenetre=new JFrame("BorderLayoutDemo");

Container tmp = fenetre.getContentPane();

tmp.setLayout(new BorderLayout()); tmp.add(new Button("Button 1(PAGE_START)",

BorderLayout.NORTH));

tmp.add(new Button("Button 3 (LINE_START)",

BorderLayout.WEST);

tmp.add(new Button("Button 2 (CENTER)")

BorderLayout.CENTER);

tmp.add(new Button("5 (LINE_END)")

BorderLayout.EAST);

tmp.add(new Button("Long-Named Button 4 (PAGE_END)") BorderLayout.SOUTH);JFrame fenetre=new JFrame("GridLayoutDemo");

Container tmp = fenetre.getContentPane();

tmp.setLayout(new GridLayout(3,2)); tmp.add(new Button("Button 1")); tmp.add(new Button("Button 2")); tmp.add(new Button("Button 3")); tmp.add(new Button("Long-Named Button 4 ")); tmp.add(new Button("5"));

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV7Composition d'une fenêtre JAVA

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV8Exemple d'une fenêtre JAVA

// Création de la fenêtre

JFrame frame = new JFrame("ExempleSimple");

// Création du container

JPanel panel = new JPanel();

// Définition du gestionnaire de placement panel.setLayout(new GridLayout(1,2)) // Création des composants

JLabel label = new JLabel("Entrer votre nom");

JTextField textField = new JTextField("toto");

// Ajout des composants au container panel.add(label); panel.add(textField); // Ajout du container à la fenêtre frame.getContentPane().add(panel); (*) // Afficher la fenêtre frame.pack(); frame.setVisible(true);

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV9Exercice (à programmer)

tfPanel chPanel lstPanel cbPanel rbPanel btPanelMenuBar Label

Checkbox

ButtonTextField

Choice

List Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV10Exercice •Réalisez l'interface suivante :

Fen : 150x10, JTextField 10 colonnes

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV11Propagation des évènements

JButton, JTextField...ActionEvent,

MouseEvent...ActionListener,

MouseListenerL 'utilisateur

réalise une actionDes événements sont alors générésLa Machine

Virtuelle reçoit

tous les

événementsSeuls les

événements

écoutés sont

transmis

Source de

l 'événementÉvénementsÉcouteurs

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV12Un exemple - 2 façons de faire

class FenListener implements ActionListener{

JFrame fenetre = new JFrame();

JButton jaune = new JButton("Jaune");

public void actionPerformed(ActionEvent e){ if (e.getSource()==jaune)

System.out.println("jaune ");

public static void main(String[] args) new BoutonAvecListener(); public FenListener(){ jaune.addActionListener(this); fenetre.getContentPane().add(jaune); fenetre.pack(); fenetre.show(); }class Fen {

JFrame fenetre = new JFrame();

JButton jaune = new JButton("Jaune");

public static void main(String[] args) new BoutonAvecListener(); public FenAvecListener(){ jaune.addActionListener(this); fenetre.getContentPane().add(jaune); fenetre.pack(); fenetre.show(); public class Ecouteur implements ActionListener{ public void actionPerformed(ActionEvent e){ if (e.getSource()==jaune)

System.out.println("jaune ");

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV13Les acteurs •Le composant -Indique les événements qu'il peut générer. -Button : MouseEvent, ActionEvent, ComponentEvent... •L'événement -Indique l'action que l'utilisateur a générée. -Ex : MouseEvent •Le listener -Il indique le traitement à faire sur une catégorie d'événements - MouseListener, ActionListener...

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV14Exercice : Interaction 1

•Mettre en place les interactions : -1 Déclarer le listener qui affiche bonjour sur la console à chaque clic sur un des deux boutons -2 Abonner les boutons sur ce listener * Listener : classe qui implante le Listener choisi * Abonnement : Utilisation de la méthode addXXXListener(XXXListener objetListener) sur le composant qui doit générer l'événement

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV15Exercice : Interaction 2

•Mettre en place les interactions : -1 Déclarer le listener de traitement qui affiche la valeur du bouton cliqué dans le textfield -2 Abonner les boutons sur ce listener * Listener : classe qui implante le listener choisi * Abonnement : Utilisation de la méthode addXXXListener(XXXListener objetListener) sur le composant qui doit générer l'événement

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV16Les composants et leurs événements

•Tous les composants génèrent des événements -Car il dérivent de la classe Component qui génère des événements •Tous les composants ne génèrent pas tous les événements -Un bouton ne génère pas d'événements de type text •Il existe pour les composants élémentaires un événement de sémantique générale appelé ActionEvent, qui représente l'interaction standard avec l'utilisateur •Click sur bouton ==> ActionEvent •DoubleClick sur une liste ==> ActionEvent •Click sur un élément de liste ==> ActionEvent • à la fin d'une saisie dans un TextField ==> ActionEvent

Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV17j a v a . a w t . e v e n t

C o m p o n e n t A d a p t e r

C o n t a i n e r A d a p t e r

A c t i o n L i s t e n e r

A d j u s t m e n t L i s t e n e r

C o m p o n e n t L i s t e n e r

C o n t a i n e r L i s t e n e r

F o c u s L i s t e n e r

F o c u s A d a p t e r

K e y L i s t e n e r

K e y A d a p t e r

M o u s e L i s t e n e r

M o u s e M o t i o n L i s t e n e r

M o u s e A d a p t e r

M o u s e M o t i o n A d a p t e r

W i n d o w L i s t e n e r

W i n d o w A d a p t e r

I t e m L i s t e n e r

T e x t L i s t e n e r

A c t i o n E v e n t

A d u j s t m e n t E v e n t

C o m p o n e n t E v e n t

C o n t a i n e r E v e n t

F o c u s E v e n t

I n p u t E v e n t

K e y E v e n t

M o u s e E v e n t

P a i n t E v e n t

W i n d o w E v e n t

I t e m E v e n t

T e x t E v e n t

A A A A A A A j a v a . u t i l . E v e n t L i s t e n e rj a v a . u t i l . E v e n t O b j e c t j a v a . a w t . A W T E v e n t A A A A S Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV18Un exemple •Réaliser un listener qui change la couleur du bouton qui possède le focus java.awt.event.FocusListenerpublic void focusGained(FocusEvent e){ public void focusLost(FocusEvent e){ •Modifiez votre classe Appli afin que tous les boutons soient abonnés à une instance de votre FocusListeneraddFocusListener(); Tarak Chaari, Stéphane Frénot, Frederique Laforest, Frédéric Le-MouëlJAV19Exercice

I) L'exemple inévitable (HelloWorld)

1) développer une fenêtre HelloWord qui affiche

" Hello !! » dans un label

2) Ajouter un bouton à la fenêtre. Le label affichera

" Hello (n) » où n est le nombre de clics sur le bouton II) Interface graphique pour la gestion des étudiants Développer une interface graphique pour ajouter, supprimer et afficher un étudiant à la classe

GesEtudHash du TD précédent.

quotesdbs_dbs6.pdfusesText_11