TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Programmation Avancée

Modérateur : Douin

Thomas P
Messages : 17
Inscription : 29 oct. 2017 16:07

TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par Thomas P » 30 oct. 2017 22:51

Bonjour,
De mon côté, la question 2 du TP4 a passée avec succès les épreuves de soumissions. Cependant, un doute persiste... En effet, l'IHM fait exactement ce qui est demandé dans le TP à une exception près, chaque clique ne remet pas le TextArea "contenu" à zéro. Les traces se succèdent donc les unes en dessous des autres pour chaque clique.

Est-ce qu'il est demandé de remettre à zéro cette zone ? Si c'est le cas, je sèche car j'ai tenté des choses mais sans résultat pour le moment... je ne trouve pas de méthode qui me semble adaptée dans la classe TextArea. J'ai tenté un insert() dans la classe JButtonObserver ou le texte s'affiche mais le comportement des boutons devient incompréhensible...

Si ce n'est pas demandé, je veux bien laisser tel quel, mais ça me chagrine un peu de ne pas trouver une simple méthode clear() par exemple...

Merci

Douin
Messages : 259
Inscription : 18 mars 2009 15:46

Re: TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par Douin » 31 oct. 2017 8:57

Bonjour, setText("") pourrait il convenir ?

Bonne fin de tp

Thomas P
Messages : 17
Inscription : 29 oct. 2017 16:07

Re: TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par Thomas P » 01 nov. 2017 11:29

Bonjour,

En effet, c'est bien setText(""); que j'avais essayé suite à des recherches sur internet et non insert(); (erreur de transcription...). Je dois mal l'utiliser ou pas au bon endroit, car mon IHM ne fonctionne plus correctement et la classe test m'indique des erreurs au premier test (bouton A) ou au deux premiers tests (A et B) suivant si je place mon appel de la méthode setText() avant ou après contenu.append();.

J'applique cette méthode setText() sur "contenu" qui représente la zone de texte et ce, dans la classe JButtonObserver dans la méthode actionPerformed(ActionEvent ae) qui écoute les actions utilisateur pour afficher le texte. Mais je dois faire fausse route au vu de mes résultats de tests...

Je continue à chercher..

GANKAMA
Messages : 54
Inscription : 26 oct. 2017 16:51

Re: TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par GANKAMA » 04 nov. 2017 12:25

Bonjours,

Je voudrai aussi savoir comment appliquer la methode setText() pour mettre ma zone de texte à vide après chaque clic sur un bouton.
j'ai essayer contenu.setText(" "); au niveau de actionPerformed(ActionEvent ae) mais je n'obtiens pas le résultat escompter.

Cordialement

_mat_
Messages : 9
Inscription : 05 nov. 2017 11:51

Re: TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par _mat_ » 05 nov. 2017 12:04

Bonjour,

J'ai cette solution à vous proposer :
J'ai ajouté un observateur "init" à chaque bouton.
J'ai ensuite, dans la méthode update, ajouté une condition ==> Si nom == "init" alors contenu.setText("")...
Cela permet à chaque clic sur un bouton de remettre d'abord à zéro le contenu.
L’ordre d'ajout des observateurs est important (différent suivant si addActionListener ou addMouseListener)

Thomas P
Messages : 17
Inscription : 29 oct. 2017 16:07

Re: TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par Thomas P » 06 nov. 2017 23:29

Bonjour,

Merci pour cette astuce, mais pour une raison obscure, cela ne fonctionne que pour les boutons A et B. Le bouton C reste affiché si l'on reclique sur A ou B... Et bizarrement, cela ne se produit plus si l'on ajoute un observateur supplémentaire au bouton C. J'ai vraiment un soucis de compréhension à ce niveau, je ne vois pas comment le programme gère ces observateurs... De plus, il doit forcement y avoir une solution moins "système D" mais je sèche toujours...
Pour toi cela fonctionne sur les 3 boutons ?

manuel.lb
Messages : 24
Inscription : 29 oct. 2017 16:59

Re: TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par manuel.lb » 06 nov. 2017 23:36

Bonjour,

J'ai constaté la même chose que Thomas. C'est même très étrange à voir !
J'ai rapidement laissé tomber, car en fait je ne vois pas demandé dans le TP qu'on efface la zone à chaque clic de bouton ; j'ai l'impression que ce n'est pas intéressant, et je ne vois pas d'autre piste propre.
Je pense que les tests unitaires auraient vérifié, si ça avait été une exigence, au lieu d'instancier à chaque méthode une nouvelle applette.

Mais ce n'est que mon humble opinion de fainéant ^^

_mat_
Messages : 9
Inscription : 05 nov. 2017 11:51

Re: TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par _mat_ » 07 nov. 2017 8:36

Bonjour,

Oui en effet, lorsqu'il y a qu'une seule ligne, le contenu ne s'efface pas.
J'ai ajouté contenu.append("") juste avant le setText("") et ça passe. Je ne sais malheureusement pas l'expliquer.

sebstmo
Messages : 1
Inscription : 07 nov. 2017 11:58

Re: TP4 - Questions 2.1 et 2.2 - Traces à obtenir

Message par sebstmo » 07 nov. 2017 12:02

J'avais le même problème que vous sur le bouton C, j'ai résolu le problème en remplaçant le contenu.append("") par contenu.setText(contenu.getText()+message+"\n").

Après ça tout marche nickel !

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité