• Aucun résultat trouvé

Les fenˆ etres

N/A
N/A
Protected

Academic year: 2022

Partager "Les fenˆ etres"

Copied!
3
0
0

Texte intégral

(1)

TS - sp´e ISN

Les fenˆ etres

TP 6

Dans cette fiche d’exercices, il est demand´e de faire l’exercice 1 puis d’en choisir un des trois autres.

Quelques rappels sur les boˆıtes de dialogues sont disponibles `a la fin de la fiche.

1 Les exercices

Exercice 1.

Reprendre le fichierPalindrome.javaenvoy´e dans vos espaces et par mail et le modifier en utilisant : – une boˆıte d’entr´ee pour la saisie du texte ;

– une boˆıte de message pour la r´eponse.

Exercice 2.

Cr´eer un jeu o`u l’ordinateur choisit un nombre entre 1 et 100 et l’utilisateur doit le chercher en proposant des valeurs. `A chaque valeur propos´ee (dans une boˆıte de dialogue), l’ordinateur r´epond

plus grand,plus petitou gagn´e !(dans une boˆıte de dialogue. . .).

Exercice 3.

Cr´eer un jeu qui demande de penser `a un nombre `a l’utilisateur puis cherche ce nombre en proposant des valeurs et en demandant si le nombre cherch´e est plus grand, plus petit ou ´egal. (Ici c’est l’ordinateur quijoue; l’utilisateur r´epond `a ses questions en cliquant sur les boutons d’une boˆıte de dialogue).

Exercice 4.

Cr´eer un programme qui permet de tester les connaissances d’un candidat sous la forme d’un qcm.

Cahier des charges :

– pour chaque question on propose trois r´eponse dont une seule est juste ;

– les questions, propositions et r´eponses seront stock´es (pour le moment1) dans un tableau ; – les r´eponses doivent se faire en cliquant sur un bouton ;

– un message doit afficher `a la fin le score du candidat (avec ou sans p´enalisation des mauvaises r´eponses).

2 Quelques rappels

Penser `a indiquer : import javax.swing.JOptionPane; dans le pr´eambule (mais Eclipse vous le rap- pelle. . .)

2.1 Boˆıte de confirmation

Une boˆıte de confirmation demande un clic `a l’utilisateur (oui/non, OK/Annuler/Ignorer, . . .).

La r´eponse est un int. On la d´eclare ainsi :

int r e p o n s e;

r e p o n s e = J O p t i o n P a n e.s h o w C o n f i r m D i a l o g(null,// p o s i t i o n

” Vous a v e z t o u t c o m p r i s ? ”, // la q u e s t i o n

” Q u e s t i o n ”,// i n t i t u l ´e de la b o ^ı t e

J O p t i o n P a n e.Y E S _ N O _ O P T I O N,// t y p e de b o u t o n s J O p t i o n P a n e.I N F O R M A T I O N _ M E S S A G E) ;// i c ^o n e

En sortie, reponsevaut 0 si on clique sur oui et 1 si on clique sur non.

1. Un projet int´eressant serait de cr´eer un logiciel qui permet au professeur de construire un ou plusieurs qcm et un autre qui permet `a l’´el`eve de le passer.

E.Gillon - T. Rey´ Page 1 18 novembre 2012

(2)

TS - sp´e ISN

Les fenˆ etres

TP 6

2.2 Boˆıte d’entr´ee de texte

Une boˆıte d’entr´ee permet `a l’utilisateur du programme de saisir du texte (`a vous de le convertir si vous souhaitez un autre format de donn´ees. . .) :

S t r i n g r e p o n s e;

r e p o n s e = J O p t i o n P a n e.s h o w I n p u t D i a l o g(null,

” M e n t e u r ! R´esumez v o s c o n n a i s s a n c e s i c i : ”,

” S a i s i r du t e x t e ”,

J O p t i o n P a n e.Q U E S T I O N _ M E S S A G E) ;

La variablereponse contient :

– le texte saisi si on a cliqu´e sur OK ; – null si on a cliqu´e sur Annuler.

2.3 Boˆıte de message

Parfois, on souhaite juste afficher une r´eponse ou une information :

J O p t i o n P a n e.s h o w M e s s a g e D i a l o g(null,

” I l va f a l l o i r t r a v a i l l e r p l u s ”,

” C o n s e i l i m p o r t a n t ! ”,

J O p t i o n P a n e.W A R N I N G _ M E S S A G E) ;

2.4 Personnalisations

Dans Eclipse, chaque fois que vous saisissez JOptionPane. une info-bulle vous propose plusieurs suggestions, `a vous d’essayer d’autres types dePane(ou panneaux) et de voir ce que cela donne. . . Un exemple de fenˆetre avec quatre boutons personnalis´es (pour d’autres exemples, internet est votre ami) :

J O p t i o n P a n e d = new J O p t i o n P a n e() ; // les t e x t e s f i g u r a n t sur les b o u t o n s

S t r i n g l e s T e x t e s[ ] = { ” b o n j o u r ”, ” au r e v o i r ”,

” b o n n e n u i t ”, ” b o n n e a n n´e e ”};

int r e t o u r = // i n d i c e du b o u t o n qui a ´et´e c l i q u ´e ou C L O S E D _ O P T I O N d.s h o w O p t i o n D i a l o g(g e t F r a m e() , ” l e m e s s a g e ”, ” l e t i t r e ”,

J O p t i o n P a n e.Y E S _ N O _ O P T I O N, J O p t i o n P a n e.I N F O R M A T I O N _ M E S S A G E,

null, // pas d i c o n e

l e s T e x t e s, // les t e x t e s de b o u t o n s l e s T e x t e s[ 0 ] ) ; // le b o u t o n par d ´e f a u t if( r e t o u r!=J O p t i o n P a n e.C L O S E D _ O P T I O N) ;// un b o u t o n c l i q u ´e

e l s e ; // pas de b o u t o n c l i q u ´e

E.Gillon - T. Rey´ Page 2 18 novembre 2012

(3)

TS - sp´e ISN

Les fenˆ etres

TP 6

Corrig´es des exercices

E.Gillon - T. Rey´ Page 3 18 novembre 2012

Références

Documents relatifs

Classez le nombre de cartes qu'elle a reçu du plus petit au plus grand.. plus petit

a-dire ne d´ epend d’aucun param` etre), d´ eterminer si elle est vraie ou fausse et le d´ emontrer.. Il existe un nombre entier plus petit que tous les nombres

Pour aller cherchei ses'légumes, le petit lapin peut descendre vers un nombre plus petit ou remonter vers un nombre plus grand.. Les autres déplacements

Le grand côté du signe sert toujours à montrer le plus grand nombre.. La petite pointe sert toujours à montrer le plus

« Je multiplie le plus petit nombre pair par le plus grand impair pour obtenir un nombre

 Comparer 2 nombres décimaux, c’est dire s’ils sont égaux ou si l’un est plus petit ou plus grand que l’autre.  Encadrer un nombre, c’est trouver un nombre plus petit

À chaque essai du second joueur, le premier indique si le nombre est plus grand ou plus petit que le nombre à deviner (ou égal, et dans ce cas le jeu est terminé). Écrivez un script

Écrire une fonction prochainPremier prenant un paramètre entier n et retournant le plus petit nombre premier plus grand ou égal à n.. Écrire un programme qui demande un entier n