Java swing getting input from a JTextField -


i see asked around lot, hasn't answered problem. new @ java. trying input jtextfield , return string can use comparison in different class. see answer, i'd able use str in other part of class.

import java.awt.borderlayout; import java.awt.color; import java.awt.container; import java.awt.event.actionevent; import java.awt.event.actionlistener; import javax.swing.jbutton; import javax.swing.jframe; import javax.swing.jtextarea;  public class classframe extends jframe {  private static final long serialversionuid = 2451829341034438685l;  public static jbutton inputbutton = new jbutton("send"); public static jtextarea edittextarea = new jtextarea("type here!"); public static jtextarea unedittextarea = new jtextarea();  public classframe(string title) {     //set layout manager (how arranges components) setlayout(new borderlayout()); //////create swing components//////////// //output text area unedittextarea.seteditable(false);  //input text area edittextarea.setbackground(color.blue); edittextarea.setforeground(color.white);  //set content pane container c = getcontentpane();  //add components content pane         c.add(unedittextarea, borderlayout.center); c.add(edittextarea, borderlayout.south); c.add(inputbutton, borderlayout.west);  classframe.inputbutton.addactionlistener(new actionlistener() {      @override     public void actionperformed(actionevent e) {         string str = edittextarea.gettext();         edittextarea.settext(" ");         system.out.println(str);                     } }); } } 

see comments.

package applet;  import java.awt.borderlayout; import java.awt.color; import java.awt.container; import java.awt.event.actionevent; import java.awt.event.actionlistener;   import javax.swing.jbutton; import javax.swing.jframe; import javax.swing.jtextarea;   public class classframe extends jframe {       private static final long serialversionuid = 2451829341034438685l;      public static jbutton inputbutton = new jbutton("send");     public static jtextarea edittextarea = new jtextarea("type here!");     public static jtextarea unedittextarea = new jtextarea();      // string, defined here , usable throughout class      private string mystring;      public classframe(string title) {          // learn indent code it's more readable both         // , others          //set layout manager (how arranges components)         setlayout(new borderlayout());         //////create swing components////////////         //output text area         unedittextarea.seteditable(false);          //input text area         edittextarea.setbackground(color.blue);         edittextarea.setforeground(color.white);          //set content pane         container c = getcontentpane();          //add components content pane                 c.add(unedittextarea, borderlayout.center);         c.add(edittextarea, borderlayout.south);         c.add(inputbutton, borderlayout.west);          classframe.inputbutton.addactionlistener(new actionlistener() {              @override             public void actionperformed(actionevent e) {                  // using class field mystring receive text text area                  mystring = edittextarea.gettext();                  // don't this.  blank space bad.                  //edittextarea.settext(" ");                  // instead.  empty string more clear indication of what's going on                  edittextarea.settext("");                  system.out.println(mystring);                             }         });     } } 

i suggest reading on variable scoping in java. google it.


Comments