Java 如何在JFrame加载时隐藏我的JPanel?
当我的JFrame开始从我的Main方法显示/加载时,我在隐藏我的JPanel(登录面板)时遇到了一个问题。执行下面的代码会给我一个NullPointerExceptionJava 如何在JFrame加载时隐藏我的JPanel?,java,swing,jframe,jpanel,Java,Swing,Jframe,Jpanel,当我的JFrame开始从我的Main方法显示/加载时,我在隐藏我的JPanel(登录面板)时遇到了一个问题。执行下面的代码会给我一个NullPointerException // Main Class public class Main(){ public static void main(String[] args){ try { new LoginPage().setVisible(true); } catch (Exception e){e.pri
// Main Class
public class Main(){
public static void main(String[] args){
try {
new LoginPage().setVisible(true);
} catch (Exception e){e.printStackTrace()}
}
}
// LoginPage Class {
public class LoginPage extends javax.swing.JFrame {
private javax.swing.JPanel LoginPanel;
public LoginPage(){
super("Login Form");
LoginPanel.setVisible(false); // ERROR - Throws NullPointerException
setSize(1280, 720);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
initComponents();
}
}
}
您应该实例化“LoginPanel” 您刚刚用“private javax.swing.JPanel LoginPanel”声明了它,但是由于它没有被实例化,所以您得到了NullPointerException
// Main Class
public class Main(){
public static void main(String[] args){
try {
new LoginPage().setVisible(true);
} catch (Exception e){e.printStackTrace()}
}
}
// LoginPage Class {
public class LoginPage extends javax.swing.JFrame {
private javax.swing.JPanel LoginPanel;
public LoginPage(){
super("Login Form");
LoginPanel.setVisible(false); // ERROR - Throws NullPointerException
setSize(1280, 720);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
initComponents();
}
}
}
只需使用loginPanel=new loginPanel()实例化它;它应该可以工作。您从未说过LoginPanel=new LoginPanel(),请使用正确的命名约定,我找到的应该是loginPanelAh。initComponents()由所有实例化的jpanel、jtext等组成。尝试将我的“LoginPanel.setVisible(false)”移动到initComponents()下。非常感谢你!