Mon but est d'écrire quelque chose qui est visible à l'utilisateur dans JTextField et d'afficher ce texte dans la console. A partir de maintenant, le JTextField accepte du texte mais rien ne s'affiche. Pas de curseur, pas de texte.Comment rendre le texte JTextField visible?
J'ai essayé d'utiliser textfield.setEditable (true), textfield.setEnable (true) et différentes couleurs avant et arrière, mais rien ne se passe. Curieusement, je peux utiliser textField.setText ("Random text") et cela se voit, mais je ne peux pas le supprimer ou le modifier lorsque le programme est en cours d'exécution et qu'il n'est pas inclus dans les sorties de getText().
Voici le programme:
import acm.program.*;
import java.awt.Color;
import java.awt.event.*;
import javax.swing.*;
@SuppressWarnings("serial")
public class TextFieldTest extends ConsoleProgram implements SomeConstants {
public void init() {
setSize(APPLICATION_WIDTH, APPLICATION_HEIGHT);
textField = new JTextField(20);
add(textField, SOUTH);
textField.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == textField)
println("Hi, " + textField.getText());
}
private JTextField textField;
}
pouvez-vous commenter toute la logique d'actionPerformed et que d'essayer à nouveau. – rbhawsar
A commenté - rien ne se montre quand j'essaye d'écrire dans le Jtextfield. J'ai essayé de commenter le addlistener, la logique et la méthode dans une combinaison différente. – Tor
Si je crée un JFrame et que j'ajoute JTextField, cela fonctionne bien, donc je suppose que cela a quelque chose à voir avec le fait que j'utilise acm (consoleprogram)? – Tor