gpt4 book ai didi

java - 如何创建一个新的 Action 监听器

转载 作者:行者123 更新时间:2023-12-01 14:58:14 25 4
gpt4 key购买 nike

此代码通过在移动按钮中添加操作监听器将文本从文本字段移动到标签现在我想要删除实现 Action 监听器并在新类中生成我自己的 Action 监听器,并且仍然使按钮移动文本

我不知道如何真正做到请帮忙:(

public final class Move extends JFrame implements ActionListener {
private GridLayout gl;
private JPanel jp;
private FlowLayout fl;
private JButton butMove;
private JTextField txtFirst;
private JTextField txtSecond;

public void buildGUI() {
this.setTitle("This is my moving JFrame");
gl = new GridLayout();
gl.setRows(2);
gl.setColumns(1);
this.setLayout(gl);
jp = new JPanel();
fl=new FlowLayout();
jp.setLayout(fl);

butMove = new JButton("Move");
txtFirst = new JTextField("please enter a string",10);
jp.add(butMove);
jp.add(txtFirst);
this.add(jp);

txtSecond = new JTextField();
this.add(txtSecond);
txtSecond.setEditable(false);
//txtSecond.setBorder(new BorderFactory());
// Border border = BorderFactory.createLineBorder();
butMove.addActionListener(this);
pack();
}

public GUI() {
buildGUI();
}

public void actionPerformed(ActionEvent e) {
String str = txtFirst.getText();
txtSecond.setText("");
txtSecond.setText(str);
txtFirst.setText("");
}
}

最佳答案

您可以在您的类内部创建私有(private)内部类

private class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
String str = txtFirst.getText();
txtSecond.setText("");
txtSecond.setText(str);
txtFirst.setText("");
}
}

所以这一项改为:

butMove.addActionListener(new MyActionListener());

关于java - 如何创建一个新的 Action 监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14072174/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com