繁体   English   中英

动作侦听器:将文本输入发送到Java中的对象

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM