zut69
Messages postés354Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention26 juin 2012
-
19 juin 2008 à 22:47
zut69
Messages postés354Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention26 juin 2012
-
24 juin 2008 à 22:21
Bonsoir,
J'ai une applet avec des textareas remplis par mon codepetit à petit, mais je n'arrive pas à récupérer le contenu actuel du JTextArea.
Il semblerait que ça se fait avec getValue, mais j'arrive pas à l'utiliser.
Est-ce qu'il faut importer ou implémenter qqch?
Eclipse me dit: The method getValue(JTextArea) is undefined for the class MaClasse
Voici ma ligne de code:
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 20 juin 2008 à 00:03
Salut,
pour récup le contenu il faut utiliser la méthode getText() de ton JTextArea.
sinon
pour ajouter une ligne à la fin utilise plutôt la méthode
'append(String)' en lieu et place de
"zone_texte1.setText(zone_texte1.getText()+contenu);"
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
zut69
Messages postés354Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention26 juin 20121 20 juin 2008 à 09:15
Salut,
Merci, avec append, ça marche bien. Par contre j'ai encore un petit souci, parce qu'en fait mon applet lit
un fichier soumis par le client. Mais je voulais que le texte se rajoute ligne par ligne et qu'on voit défiler tout
le fichier très rapidement. Mais là, le résultat est le même si je fais:
while((temp = br.readLine()) != null)
{
if(i==0) contenu=temp; // pour pas faire un retour ligne avant la premiere ligne
else contenu = contenu + "\n" + temp;
}
zone_texte1.setText(contenu);
Tout s'affiche d'un seul coup dans les deux cas. Au dirait que ce que les informations sont affichées à l'écran
seuelement quand le actionEvent est fini. T'aurais une idée? Parce que si je soumet un gros fichier, l'applet ne
répond plus pendant la lecture du fichier, ce qui est logique, mais on a l'impression qu'il a planté et 30 sec plus
tard tout s'affiche d'un coup.
indiana_jules
Messages postés750Date d'inscriptionmardi 9 mars 2004StatutMembreDernière intervention23 décembre 200822 24 juin 2008 à 13:39
Salut,
pour cela, il faudrait que tu ralentisses ton processus en pensant par le biais de Thread.sleep(timeInMillisecondes)
du coup, il faudrait faire un truc du style:
while((temp = br.readLine()) != null)
{
zone_texte1.append(temp+"\n");
Thread.sleep(100); //On endort le processus courant pendant 10 millisecondes
}
Attention, cette nouvelle ligne va te demander de gérer un exception (il suffit alors de l'entourer avec un try / catch que j'avais la flemme de taper :) )
zut69
Messages postés354Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention26 juin 20121 24 juin 2008 à 22:21
J'ai pas de fonction paint(), du coup un repaint servirait à rien, mais dans le doute j'ai esssayé les 2 zone_texte1.repaint() et zone_texte1.validate(), mais le résultat est le même :-(
Il y aura pas moyen de créé une autre fonction ou un paint ou qqch de substitiution qui pourrait être appelé à chaque ligne?