Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.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_Button_Applet - Fatal编程技术网

Java 小程序按钮单击不工作

Java 小程序按钮单击不工作,java,button,applet,Java,Button,Applet,当我点击小程序上的按钮时,我没有得到任何响应我之前得到了输出-然后我评论这部分做了一些其他事情。现在当我回到它时,无论我做什么,它都不工作 public class main extends Applet { TextArea display = new TextArea(); TextField input = new TextField(); Button send; Button connect; String message; Sock

当我点击小程序上的按钮时,我没有得到任何响应我之前得到了输出-然后我评论这部分做了一些其他事情。现在当我回到它时,无论我做什么,它都不工作

public class main extends Applet {

    TextArea display = new TextArea();
    TextField input = new TextField();
    Button send;
    Button connect;

    String message;
    Socket cli = null;
    Socket client = null;
    time updatetime;
    Start_server start_server=null;

    public void init() {

        send = new Button("send");
        connect = new Button("Start");

        Panel keys = new Panel();
        keys.setLayout(new GridLayout(1, 1));
        keys.add(connect);

        Panel south = new Panel();
        south.setLayout(new BorderLayout());
        south.add("West", keys);
        south.add("Center", input);
        south.add("East", send);

        Label title = new Label("Lamport", Label.CENTER);
        title.setFont(new Font("Helvetica", Font.BOLD, 14));

        setLayout(new BorderLayout());
        add("North", title);
        add("Center", display);
        add("South", south);

    }

    public boolean action(Event e, Object o) {
        if (e.target == connect) {
            display.append("connected");
        }
        else if(e.target == send) {
            display.append("sent");
        }
        return true;
    }
}

按钮无法神奇地执行任何操作,除非您为它们提供代码,让它们执行操作,这是通过向按钮添加ActionListener来实现的。我看不出你在哪里这样做,这当然是解决你问题的办法。在编写此代码之前,您是否已经阅读了有关此方面的教程,因为教程和本论坛以前的帖子中都对其进行了详细描述?另外,我很好奇为什么要编写AWT程序而不使用功能更强大的Swing GUI库?

按钮无法神奇地执行任何操作,除非您给它们提供代码让它们执行操作,这是通过向按钮添加ActionListener来完成的。我看不出你在哪里这样做,这当然是解决你问题的办法。在编写此代码之前,您是否已经阅读了有关此方面的教程,因为教程和本论坛以前的帖子中都对其进行了详细描述?另外,我很好奇为什么要编写AWT程序而不使用更强大的Swing GUI库?

首先,您的类需要实现ActionListener接口

public class main extends Applet implements ActionListener
这要求您创建已有的操作(事件)函数

然后,您需要告诉您的按钮使用该类作为其操作侦听器

send.addActionListener(this);

这将使单击注册成为可能。

首先,您的类需要实现ActionListener接口

public class main extends Applet implements ActionListener
这要求您创建已有的操作(事件)函数

然后,您需要告诉您的按钮使用该类作为其操作侦听器

send.addActionListener(this);

这将使单击注册表。

在我添加导入后,注释掉两行多余的行,添加一个小程序标记,编译它并在小程序查看器中运行它,我得到如下输出:

connectedconnectedsentconnectedsent
所以我认为你这边的问题是浏览器使用的是旧版本的类。在开发过程中,最好使用applet查看器(或)启动applet,这两个缓存类都不能


如果小程序需要这些工具不支持的测试内容(例如与JS的交互),请确保已将Java控制台配置为在加载小程序(或JWS应用程序)时打开。有一些命令(请参见起始输出中的列表)用于刷新缓存。有时也可以通过停止并重新启动浏览器来实现,但清除类缓存更可靠。

在我添加导入后,注释掉几行多余的行,添加一个小程序标记,编译它并在小程序查看器中运行它,我得到的输出如下

connectedconnectedsentconnectedsent
所以我认为你这边的问题是浏览器使用的是旧版本的类。在开发过程中,最好使用applet查看器(或)启动applet,这两个缓存类都不能


如果小程序需要这些工具不支持的测试内容(例如与JS的交互),请确保已将Java控制台配置为在加载小程序(或JWS应用程序)时打开。有一些命令(请参见起始输出中的列表)用于刷新缓存。有时,也可以通过停止并重新启动浏览器来实现,但清除类缓存更可靠。

1)
public class main..
a)“main”对于小程序类来说是一个糟糕的名称。b) 请学习类、方法和属性名称的通用(特别是用于名称的大小写),并一致使用它们。2)
。。扩展小程序{
在这个千年中不要使用AWT组件。使用Swing。3)不要使用不推荐的方法。检查JavaDocs以获得替换。4)为了更快地获得更好的帮助,发布一个。我写的所有代码都是专门为某个目的而写的……那么你有什么具体的答案吗?“我写的所有代码都是专门为某个目的而写的…”好的,好的..那条评论应该是针对我提出的4点中的任何一点吗?如果是,哪一点,以及如何回答?“那么你有什么具体的答案吗?”那么你注意到我们评论下面以“3个答案”开头的区域了吗你注意到最重要的答案了吗?你注意到23小时前是谁发布的吗?那么你现在开始觉得自己很愚蠢了吗?;)谢谢你对我的代码和这么多有价值的建议……现在也许你甚至可以教我如何“使用Swing”,这将是一个非常有用的建议!“最后,我重写了整个代码,它神奇地工作了”这并没有什么神奇之处。在您了解发生了什么并纠正它之前,每次更改小程序代码时,这个问题都会继续出现。“现在,也许您甚至可以教我如何“使用Swing”当然可以,.1)
public class main..
a)'main'对于小程序类来说是一个糟糕的名称。b)请学习类、方法和属性名称的通用(特别是用于名称的大小写)并一致使用它们。2)
。扩展小程序{
在这个千禧年不要使用AWT组件。使用Swing。3)不要使用不推荐的方法。检查JavaDocs以获得替换。4)为了更快地获得更好的帮助,发布一篇文章。我写的所有代码都是专门为某个目的而写的……那么你有什么具体的答案吗?“我写的所有代码都是专门为某个目的而写的…”好的,好的..那条评论应该是针对我提出的4点中的任何一点吗?如果是,哪一点,以及如何回答?“那么你有什么具体的答案吗?”那么你注意到我们评论下面以“3个答案”开头的区域了吗你注意到最重要的答案了吗?你注意到23小时前是谁发布的吗?那么你现在开始觉得自己很愚蠢了吗?;)谢谢你对我的代码和这么多有价值的建议……现在也许你甚至可以教我如何“使用Swing”,这将是一个非常有用的建议!“最后,我重写了整个代码,它神奇地工作了”这是没有魔力的。直到你明白发生了什么并纠正它,这