Problème pour récupérer le contenu d'un TextArea et le replacer URGENT !
Hopal
Messages postés9Date d'inscriptionmardi 10 mai 2011StatutMembreDernière intervention14 juin 2011
-
10 juin 2011 à 09:54
Hopal
Messages postés9Date d'inscriptionmardi 10 mai 2011StatutMembreDernière intervention14 juin 2011
-
10 juin 2011 à 16:51
Bonjour !
Je débute en JAVA et j'ai quelque problèmes ... Je souhaite créer une barre d'édition de texte et récupérer le texte créer.
J'ai commencer par créer ma barre avec mes boutons. Une fois la barre crée, on crée la zone de texte avec le Bouton "CreerTexte". On écrit notre texte qu'on peut modifier coller etc. Jusque là tout va bien.
Ensuite, je voudrais récupérer le texte créé et le replacer dans une autre zone de texte (aprés avoir fermer la première) PLACER à un endroit différent de la première (au milieu de l'écran par exemple).
Voilà mon problème : je n'arrive pas à créer cette nouvelle fenêtre contenant mon Texte.
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 10 juin 2011 à 10:45
Je retrouve cette question assez souvent sous diverses formes, je vais peut être faire un tutoriel sur la communication et la transmission de paramètres entre les classes un de ces jours.
Tu dois placer le texte à afficher en paramètre du constructeur de la nouvelle classe
public class NouvelleClasse extends JFrame {
private JTextArea texte;
public NouvelleClasse(String texte){
texte = new JTextArea(texte);
//...
}
}
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 10 juin 2011 à 13:19
Non, tu peux juste adapter la tienne (je n'ai pas lu ton code)
Tu peux faire deux constructeurs :
public class Classe extends JFrame {
private JTextArea texte;
public Classe(String texte){
texte = new JTextArea(texte);
//...
}
public Classe(){
this("");
}
}
Hopal
Messages postés9Date d'inscriptionmardi 10 mai 2011StatutMembreDernière intervention14 juin 2011 10 juin 2011 à 13:58
Je pense avoir compris. Mais en essayant de faire ça cela ne marche toujours pas, il ne m'affiche pas la nouvelle fenêtre qui doit contenir le texte précédent.
J'avais pensé utiliser un GridBagLayout pour cela, ce qui me permettrait en même temps de pouvoir positionner cette nouvelle fenêtre où je veux dans le JPanel mais j'y arrive pas non plus
dsl d'être aussi peu douée (pour ne pas dire carrément nulle !) en java ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Hopal
Messages postés9Date d'inscriptionmardi 10 mai 2011StatutMembreDernière intervention14 juin 2011 10 juin 2011 à 15:53
Oui. En fait, cette barre va être insérer dans une autre interface graphique contenant des fonctions de dessins (tracer des formes, pleines ou seulement contours, etc...) en vue de faire un logiciel de cartes de visite.
Et donc, ce qu'on aimerait, c'est qu'en validant le texte créé, il soit "coller" dans une autre zone qui elle sera déplaçable dans notre zone de dessin (autrement dit la carte) tout en gardant toutes les modifications que nous avons fait sur le texte.
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 10 juin 2011 à 16:10
D'accord, ce n'est donc pas exactement la même fenêtre.
Ce que tu peux faire c'est ajouter dans ta classe une méthode editer
public void editerCarte(){
return new Carte(TB.getText());
}
Avec la classe carte qui contient une JTextArea initialisée avec une chaine de caractères comme ca :
public class Carte extends JFrame {
private JTextArea texte;
public Carte(String chaine){
this.texte = new JTextArea(chaine);
//Je n'écrit pas tout
}
}
Dans le bouton valider, tu fais un appel à cette méthode et le tour est joué
Hopal
Messages postés9Date d'inscriptionmardi 10 mai 2011StatutMembreDernière intervention14 juin 2011 10 juin 2011 à 16:51
Merci ! Je pense que c'est une bonne idée et que ça devrais marcher.
Je l'ai testé et pour l'instant ça ne marche pas, mais je pense que ça doit venir de ma classe Carte ...