[英]Action Listener: sending a text input to an object in Java
我不知道如何使用action Listener()
方法從接口上按下的按鈕發送文本輸入到Java中的對象。
import javax.swing.*;
import java.awt.event.*;
public class Preassessment extends javax.swing.JFrame implements ActionListener {
static JTextField concept = new JTextField(15);
JButton enter = new JButton("Enter");
JLabel conceptLabel = new JLabel("Concept: ");
public Preassessment() {
super("Preassessment Sys");
setSize(350, 180);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel pane = new JPanel();
pane.add(conceptLabel);
pane.add(concept);
pane.add(enter);
add(pane);
enter.addActionListener(this);
setVisible(true);
}
public void actionPerformed(ActionEvent event) {
if(event.getSource() == enter){
conceptLabel.setText(concept.getText());
}
}
public static void main(String[] arguments) {
Preassessment preassess = new Preassessment();
Preassessment agInterface = new Preassessment(); //object to receive the text
}
}
您的問題不夠具體。 無論如何,您都需要在代碼中的某個地方引用目標對象,因此一種實現方法是:
public class Preassessment extends javax.swing.JFrame implements ActionListener {
static JTextField concept = new JTextField(15);
JButton enter = new JButton("Enter");
JLabel conceptLabel = new JLabel("Concept: ");
public Preassessment(ActionListener listener) {
super("Preassessment Sys");
setSize(350, 180);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel pane = new JPanel();
pane.add(conceptLabel);
pane.add(concept);
pane.add(enter);
add(pane);
enter.addActionListener(listener);
setVisible(true);
}
public void actionPerformed(ActionEvent event) {
if(event.getSource() == enter){
conceptLabel.setText(concept.getText());
}
}
public static void main(String[] arguments) {
Preassessment agInterface = new Preassessment(); //object to receive the text
Preassessment preassess = new Preassessment(agInterface);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.