Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
操作侦听器:向Java中的对象发送文本输入_Java - Fatal编程技术网

操作侦听器:向Java中的对象发送文本输入

操作侦听器:向Java中的对象发送文本输入,java,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 ente

我不知道如何使用
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         
    }
}

你的问题不够具体。在任何情况下,您都需要在代码中的某个位置引用targetobject,因此一种方法是:

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);       
    }
}

你到底想做什么?如果我明白你的意思的话,你可能想研究可观察的。否则请澄清你的问题。谢谢。目标对象是agInterface,代码中给出了它:Preassessment agInterface=new Preassessment();你是说引用应该不同于创建目标对象agInterface的引用吗?从长远来看,我想做的是看看文本输入是否可以在Jason/Jade这样的代理平台上从Java对象传递给代理。谢谢程序运行了,但编译时出错,请参见下面:线程“main”java.lang中的异常。错误:未解决的编译问题:构造函数预评估(Preassessment)在预评估时未定义。main(Preassessment.java:38)请提供一些帮助