J'essaie de transmettre une valeur JTEXTFIELD créée en classe 2 à la classe 3. Lors de la compilation, mon terminal me montre ceci:
error: incompatible types
username = class2.username;
Ma structure de code est la suivante.
class 1
- has main
-class2 c2 = new class2
class 2 (extends JFrame)
- JTextField username = new JTextField("", 15);
-method gui here
-method actionlistener here
if e.getsource == submit
class3 c3 = new class3
c3.connection();
class 3
-method connection
-string username declared here
- username = class2.username
Comment puis-je obtenir la valeur de la classe 2 en classe 3?
Réponses:
1 pour la réponse № 1Vous avez eu l'erreur parce que vous assignez JTextField
à un String
ce qui entraînerait incompatible types
Erreur.
Pour pouvoir obtenir la valeur de JTextField
vous devez utiliser le getText()
méthode comme suit:
username = class2.username.getText();
getText()
renvoie un String
que vous pouvez ensuite assigner à tout String
vous aimez.
Voici la documentation pour getText()
: http://docs.oracle.com/javase/7/docs/api/javax/swing/text/JTextComponent.html#getText()