簡體   English   中英

從JPanel類調用JFrame上的函數

[英]Call function on a JFrame from a JPanel class

我有一個登錄JPanel ,它以編程方式添加到JFrame 問題是我想使用按鈕從登錄JPanel類調用JFrame上的函數。

在這里,我已經在PartLogin JPanel類中將MainFrame聲明為mainFrame

public class PartLogin extends JPanel {

    MainFrame mainFrame;

然后,我從JFrame創建了一個公共函數,通過單擊按鈕從PartLogin進行了調用

mainFrame.changeLabel();

我在buttonclick代碼中指向了一個NullPointerException

mainFrame.changeLabel();

NullPointerException通常表示需要為非null的對象為null。 在這里,這可能是mainFrame Java不是C ++,因此該語句等於:

MainFrame mainFrame = null;

您應該對此進行更改,以使mainFrame不為null。 有兩種方法:

  1. 在聲明中賦值:

     MainFrame mainFrame = new MainFrame(); 
  2. 在構造函數中賦值:

     private MainFrame mainFrame; // don't must be private public PartLogin () { super(); // call ctor of superclass mainFrame = new MainFrame(); // ... } 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM