Java setVisible从一个JFrame类到另一个?

阿洛西乌斯(Alosyius)

我有一个JFrame可以创建基本通知JFrame类实例的主体

我的从主目录创建通知的代码JFrame如下所示:

new Notification(from, msg, time);

我想知道我如何从通知类中访问我的main JFrame基本上,我想JFrame从我的通知类中更改主要组件上的setVisible

编辑

我的client.java(main JFrame)调用通知

public JPanel pnlMidMenuButtons;
/**** code... **/
Notification ntf = new Notification(from, msg, time); // Further down the notification is being called

ImportUI:

公共类ImportUI扩展客户端实现NotificationParent {

public void setImportantFieldsVisible(boolean visible) {
    pnlMidMenuButtons.setVisible(visible);
}

}

NotificationParent:

public interface NotificationParent {
    public void setImportantFieldsVisible(boolean visible);
    public void setAgentName(String agentName);
}

而我的通知类:

public class Notification extends JFrame {

    private NotificationParent parent;
    /*...*/

    public Notification(NotificationParent parent, String from, String msg, Date time) {
        this.parent = parent;
        parent.setImportantFieldsVisible(false); // Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException 
    }

}

任何想法导致异常的原因是什么?

疯狂程序员

实际答案将取决于您的需求,但是我会创建一个interface(或者如果您想为某些对象提供某些功能而不是其他对象提供一系列接口)。

public interface NotificationParent {
    public void setImportantFieldsVisible(boolean visible);
}

然后,我将在调用方上实现此接口...

public class ImportUI extends ... implements NotificationParent {
    /*...*/
    public void setImportantFieldsVisible(boolean visible) {
        //....
    }
}

然后,我将从附加参数添加到,Notification以便它可以接受NotificationParent...的引用

public class Notification extends ... {

    private NotificationParent parent;
    /*...*/

    public Notification(NotificationParent parent, String from, String msg, Date time) {
        this.parent = parent;
        /*...*/
    }

}

然后,我们将在需要时调用一种可用的方法来满足您的要求。

显然,现在您可以有更多的方法,但这取决于您的要求...

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

的Java NIO从一个插槽读取和写入到另一个固有缺陷?

如何从一个Java类的信息传递到另一个

如何将属性从一个Java bean复制到另一个Java bean?

尝试在Java类的帮助下将数据从一个jFrame传输到另一个jFrame

将Java对象/类从一个类加载器复制到另一个类加载器

Java从一个对象到另一个对象的条件映射?

如何使用Java将字符串数组或整数值从一个类传递到另一个?

如何在Java中将参数从一个类传递到另一个类?

在Java中将属性从一个类传递到另一个+实例

在Java中将变量从一个类传递到另一个类,这一直给我一个空错误

如何在Java中将文件属性从一个文件复制到另一个文件?

如何将Java类(从一个包中)继承到另一个类(在另一个包中)

在Java中将表的内容从一个类保留到另一个类

将值从一个对象传递到另一个Java

从一个调用的Java程序到另一个的手动响应

Java-如何获取从一个类中的方法生成到另一个类中的变量?

在Java中将ArrayList从一个类传递到另一个类

JAVA无法从另一个类中绘制到JFrame上

我将如何从一个类到另一个类访问一个int变量?(Java)

如何通过Java中的方法将对象从一个类传递到另一个类

使用Java将数据从一个表复制到Cassandra中的另一个表

如何在 Java/IntelliJ 中创建从一个类到另一个类的一对多和多对一关系

java中从一个类到另一个类的参数和参数

Java:是否可以将对象数组从一个类返回到另一个类

Java GUI,从一个类过渡到另一个类

在 Java 中将布尔信息从一个类传递到另一个类

IDE 无法识别 Java 中变量何时从一个类传递到另一个类的小问题

在 Java 中获取和打印从一个类到另一个类的返回值时遇到问题

java中如何在没有main方法的情况下从一个类调用toString()方法到另一个类