Java JPanel类未添加到JFrame

Java JPanel类未添加到JFrame,java,swing,Java,Swing,我无法从主类获取JFrame来显示另一个类的JPanel。一切编译都没有错误 这是我扩展JFrame的主要类代码: public OnlineCarSalesSystem(){ setTitle("Online Car Sales System"); setVisible(true); setExtendedState(JFrame.MAXIMIZED_BOTH); setLayout(null); setDefaultCloseOperation(EXI

我无法从主类获取JFrame来显示另一个类的JPanel。一切编译都没有错误 这是我扩展JFrame的主要类代码:

public OnlineCarSalesSystem(){
    setTitle("Online Car Sales System");
    setVisible(true);
    setExtendedState(JFrame.MAXIMIZED_BOTH);
    setLayout(null);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    add(new Login());
}

public static void main(String[] args) {
    new OnlineCarSalesSystem();
}
在上面的代码中,我添加了
add(newlogin())但它没有在我的JFrame上显示该面板。在下面的代码中,我用JPanel扩展了我的类。这是JPanel类代码:

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;

public class Login extends JPanel{
    JLabel loginLabel = new JLabel("Login ID");
    JLabel passwordLabel = new JLabel("Password");
    JTextField loginTextField = new JTextField();
    JPasswordField passwordTextField = new JPasswordField();
    JButton submitButton = new JButton("Submit");
    JButton registration = new JButton("new Registration");
    JLabel noaccountLabel = new JLabel("No Account yet!!!");
    public void Login(){
        setBounds(0,0,500,500);
        setBackground(Color.red);
        setVisible(true);
        loginLabel.setBackground(Color.cyan);
        passwordLabel.setBackground(Color.cyan);
        loginTextField.setBounds(680, 103,90,20);
        add(loginTextField);
        loginLabel.setBounds(600, 100,90,30);
        add(loginLabel); 
        passwordTextField.setBounds(680, 153,90,20);
        passwordTextField.setEchoChar('*');
        add(passwordTextField);
        passwordLabel.setBounds(600, 150,90,30);
        add(passwordLabel); 
        add(submitButton);
        submitButton.setBounds(640,200,90,30);
        submitButton.addActionListener(new ActionListener() {   //////Submit Button
            public void actionPerformed(ActionEvent e) {

            }
        });
        add(registration);
        registration.setBounds(638,270,96,30);
        add(noaccountLabel);
        noaccountLabel.setBackground(Color.cyan);
        noaccountLabel.setBounds(640,250,90,30);
        registration.addActionListener(new ActionListener() {   //////registration Button
            public void actionPerformed(ActionEvent e) {

            }
        });
    }
}

问题是,
Login()
-函数在代码中的任何一点都没有执行。你可能想要改变

public void Login() { ... }


因此,在对象初始化时执行代码。

问题是,
Login()
-函数在代码中的任何一点都没有执行。你可能想要改变

public void Login() { ... }

因此,代码在对象初始化时执行(p>1),以便更快地获得更好的帮助,添加or。2) Java GUI必须在不同的操作系统、屏幕大小、屏幕分辨率等上工作,在不同的地区使用不同的PLAF。因此,它们不利于像素完美布局。而是使用布局管理器,或与布局填充和边框一起使用。“但是它没有显示该面板”可能的原因是
null
布局。3)
public void Login(){
如果您打算作为构造函数,它应该是
public Login(){
.4)这里没有很好的理由来扩展
JFrame
JPanel
。此外,如果是登录,框架应该是
JDialog
JOptionPane
.1)为了更快地获得更好的帮助,添加一个或。2)Java GUI必须在不同的操作系统上工作,屏幕大小,屏幕分辨率等不同地区的不同平面图。因此,它们不利于像素完美布局。相反,使用布局管理器,或与布局填充和边框一起使用。“但它不显示该面板”
null
layout是可能的原因。3)
public void Login(){
如果你想作为一个构造函数,它应该是
public Login(){
。4)这里没有很好的理由来扩展
JFrame
JPanel
。此外,如果它是一个登录,那么框架应该是
JDialog
JOptionPane