テキストフィールドを含むクラスがあり、そのクラス内にアクション実行メソッドを含む内部クラスがあります。テキストを入力して Enter キーを押すと、アクション リスナーを実装する内部クラスの外部にある文字列 "s" にテキストを割り当てたいと思います。その文字列を別のクラスで使用したい。
public class Peaches extends JFrame {
private JTextField item1;
public Peaches() {
super("the title");
setLayout(new FlowLayout());
item1 = new JTextField(10);
add(item1);
thehandler handler = new thehandler(); //object of thehandler inner class
item1.addActionListener(handler);
// I want to use the textfield content here, or in other classes, updated
// with the new text everytime i hit enter after entering new text in the textfield
//String s = the content of the textfield
}
private class thehandler implements ActionListener { // inner class
@Override
public void actionPerformed(ActionEvent event) {
String string = "";
string = String.format(event.getActionCommand());
JOptionPane.showMessageDialog(null, string);
}
}
これを行う方法はありますか?プログラムの他の部分でテキスト フィールドの入力を使用できる必要があります。私は自分自身を明確にすることを願っています、ありがとう。
編集 返信ありがとうございます。変数文字列をコンストラクターで宣言する代わりにクラス変数にすることで、クラス全体がアクセスできるようになります。単純ですが、理解できませんでした。ありがとうマルコ