gpt4 book ai didi

java - 从 JPanel 类调用 JFrame 上的函数

转载 作者:行者123 更新时间:2023-12-02 05:08:02 25 4
gpt4 key购买 nike

我有一个登录JPanel,它是以编程方式添加到JFrame 中的。问题是我想使用按钮从登录 JPanel 类调用 JFrame 上的函数。

在这里,我在 PartLogin JPanel 类中将 MainFrame 声明为 mainFrame:

public class PartLogin extends JPanel {

MainFrame mainFrame;

然后,我从 JFrame 创建了一个公共(public)函数,然后通过单击按钮从 PartLogin 调用它

mainFrame.changeLabel();

我有一个 NullPointerException 指向按钮点击代码内部。

mainFrame.changeLabel();

最佳答案

NullPointerException 通常表示需要不为 null 的对象为 null。在这里,这可能是mainFrame。 Java 不是 C++,因此该语句等于:

MainFrame mainFrame = null;

您应该更改此设置,以使 mainFrame 不为空。有两种方法:

  1. 在声明中赋值:

    MainFrame mainFrame = new MainFrame();
  2. 在构造函数中赋值:

    private MainFrame mainFrame; // don't must be private

    public PartLogin ()
    {
    super(); // call ctor of superclass
    mainFrame = new MainFrame();
    // ...
    }

关于java - 从 JPanel 类调用 JFrame 上的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27600309/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com