检查按钮在Java中的不同类中单击

检查按钮在Java中的不同类中单击,java,Java,我有两个类,一个是Main.java,另一个是Button.java public void actionPerformed(ActionEvent e) { if(e.getSource()==Jsend) { String userinput = Jusertxt.getText(); setUserText(userinput);//setUserText is a method for Main.java

我有两个类,一个是Main.java,另一个是Button.java

public void actionPerformed(ActionEvent e) {

        if(e.getSource()==Jsend)
        {
            String userinput = Jusertxt.getText();
            setUserText(userinput);//setUserText is a method for Main.java can get a String from user input.
            Jusertxt.setText("");
        }
    }
所以在Main.java中,我需要确认Button.java中的Jbutton被单击时,Main.java将执行一些操作

在Button.java中

public void actionPerformed(ActionEvent e) {

        if(e.getSource()==Jsend)
        {
            String userinput = Jusertxt.getText();
            setUserText(userinput);//setUserText is a method for Main.java can get a String from user input.
            Jusertxt.setText("");
        }
    }
我需要在Main.java中编写什么语句来检查button.java中是否单击了按钮

下面是Main.java中的一些代码

while(true){

if(//in here i need to ensure button is clicked){
}   }

在按钮中放置一个布尔值,使用getter检索布尔值,例如

例如:

 //Within main
 Button button = new Button(); // I wouldn't recommend using button as a 
 class name by the way, will get very confusing
 if(button.getPressed){
 // do stuff
 }
您的按钮代码:

public void actionPerformed(ActionEvent e) {

    if(e.getSource()==Jsend)
    {
        String userinput = Jusertxt.getText();
        setUserText(userinput);//setUserText is a method for Main.java can get a String from user input.
        Jusertxt.setText("");
        isPressed = true;
    }
}



 public boolean getPressed(){
 return isPressed;
 }

若要按接收通知按钮,必须在Main.java中注册侦听器。使用它,您可以同步本地变量以存储按钮的状态(如果单击)。此变量可在以后用于确定按钮是否按下(一次)


Edit另一个选项是Button.java的变量部分,要实现一个公共方法isClicked()

这个
如果(Button.getPressed){
必须在一个循环中运行。这是个坏主意。实际上是我的Main.java有一个类似while(true)的语句{//那么这是我需要检查的代码Button is Click}我试过你的代码,不起作用。谢谢你的回复。可以直接知道按钮是用不使用的方法点击的吗?我试过用参考一些在线材料编写同步按钮,但不起作用。实际上是我的Main.java是一个与UDP程序相关的程序。一旦TCP连接建立,my button.java将被调用。你无法检查是否按下按钮,以及是否已联系?在这种情况下,请使用用户定义的侦听器来监视通信状态。用户定义的侦听器对我来说似乎很难。也许我会将输入方法更改为Joptionpane。不复杂。应完成回调函数,以便在状态套接字打开时用于通知t、 为了实现hira,这是一个描述回调函数的接口,其中Socket创建了一个接口变量(加上setter).每次状态改变后调用接口中描述的回调函数。在Main.java中使用setter提交接口实例。基本上是这样。谢谢回复。但是你能写一些示例代码供参考吗?我在互联网上搜索时仍然不知道如何开始。