JTextArea + enter

JTextArea + enter - Java - Programmation

Marsh Posté le 30-11-2005 à 19:06:56    

Bonsoir,  
 
Je réalise une application qui permet de se connecter à un serveur distant.
Pour cela, l'utilisateur doit saisir l'adresse IP du serveur, le port, son nom d'utilisateur et son password.
Quand la connection est établie, j'ai mon JTextArea qui apparait et je fait un setText(User) sur le JTextArea.
Cela m'affiche donc à la première ligne de mon zone de texte le nom d'utilisateur comme suit :  
 
____________________________  
user>                                     |
                                             |
                                             |     le dessin est un peu mal fait, je l'avoue !  lol   :ange:  
                                             |
____________________________|
 
 
Ce que je veut faire, c'est que quand je met mon curseur à la fin de la première ligne, et que j'appuie sur la touche "entrée", j'obtiens à la deuxième ligne "user>"
 
Pour le moment j'utiliser les évènements KeyListener (KeyPressed(evt)) et en fait quand j'appuie sur entrée, çà me remplace la première ligne.
 
Comment pourrais-je faire pour passer directement à la deuxième ligne.
 
Cordialement
 
 

Reply

Marsh Posté le 30-11-2005 à 19:06:56   

Reply

Marsh Posté le 30-11-2005 à 19:18:08    

En fait, je veux faire une appli avec un JTextArea qui peut être utilisé comme une console sous Linux.

Reply

Marsh Posté le 30-11-2005 à 20:16:09    

Code :
  1. je fait un setText(User) sur le JTextArea.

c pas un append qu'il faudrait faire :sarcastic:

Reply

Marsh Posté le 01-12-2005 à 16:30:22    

Re,  
 
en fait quand je clique sur "connecter", j'ai mon nom d'utilisateur suivi du caractère '>' et de mon curseur qui apparait à la première ligne de mon JTextArea.  ex : user>|
 
Ensuite, ce que je veux faire, c'est quand l'utilisateur appuie sur la touche entrée, il y ai la même chaine qui s'affiche à la deuxième ligne.
Ex :  user>        // première ligne
       user>|       // deuxième ligne
 
et ainsi de suite.
 
Par la suite, il faudra que la commande tapée par l'utilisateur s'exécute. Par exemple la commande "ls", mais je verrais çà une fois mon problème du dessus résolu.
 
Voici le code de ma touche entrée :  
 
public void enter_keyPressed(KeyEvent evt) {
 if (evt.getKeyCode() == KeyEvent.VK_ENTER)
  {
  String cmd = recupCmd();    
         out.println(cmd);   //envoi de la commande au serveur
                grandeZone.append(champU+">" );
  }
}
 
//La fonction recupCmd() permet de récupérer juste la commande saisie par l'utilisateur. ex : user>ls --> cmd sera égal à ls
 
//grandeZone est le nom de mon JTextArea et chamU comporte simplement le nom de l'utilisateur.
 
Pouvez-vous me donner un conseil ??  
 
Cordialement

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed