Java 杰帕内尔元';我不能出现在画面上

Java 杰帕内尔元';我不能出现在画面上,java,swing,jpanel,Java,Swing,Jpanel,JPanel不会出现在JFrame上,我不知道为什么。似乎JPanel并没有以某种方式添加到JFrame中。有什么建议吗 import java.awt.*; import javax.swing.*; public class LeaseItGUI extends JPanel{ private int width=600,height=600; public void paintComponenet(Graphics g){ super.paintComp

JPanel不会出现在JFrame上,我不知道为什么。似乎JPanel并没有以某种方式添加到JFrame中。有什么建议吗

import java.awt.*;
import javax.swing.*;

public class LeaseItGUI extends JPanel{
    private int width=600,height=600;

    public void paintComponenet(Graphics g){
        super.paintComponent(g);
        g.fillRect(0, 0, width, height);
    }
}

import javax.swing.*;
import java.awt.*;

public class LeaseItMain extends JFrame{
    private int width=600,height=600;

    public LeaseItMain(){
        setSize(width,height);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setResizable(false);
        LeaseItGUI theGui = new LeaseItGUI();
        setVisible(true);
        add(theGui);
    }


    public static void main(String[] args){
        LeaseItMain LIM = new LeaseItMain();
    }
}
使用:

之前:

setVisible(true);

根据@VinceEmigh的建议,在
setVisible
之前添加面板。面板应返回600x600的首选尺寸。将面板添加到框架中。在调用..之前,将框架设置为不可调整大小。。把架子打包。将其设置为可见。它将是显示600x600面板所需的确切尺寸,并且本身将大于该尺寸(不同的尺寸取决于操作系统等)。我做了,但没有任何建议解决了问题。。。这种情况有些奇怪。我已经这样做了,正如你在主体中所看到的,我尝试了你的方法,但没有效果,这是一种非常奇怪的情况,因为面板根本不会出现在JFrameIt上。它确实起作用-你将paintComponent()错贴为paintComponenet(),所以面板上没有任何东西被涂上。这并不意味着面板不在那里。有时我想知道我每天是如何生活的。。。非常感谢您的帮助!通常的帮助是将
@Override
放在重写超类/接口方法的方法之前。在这种情况下,它会给您一个警告,指示“paintComponenet”没有覆盖任何内容。
setContentPane(theGui);
setVisible(true);