Java 将JPanel添加到我的框架中

Java 将JPanel添加到我的框架中,java,swing,jpanel,frame,Java,Swing,Jpanel,Frame,我正在制作一个吊人游戏。当用户点击一个按钮(每个字母26个)时,如果猜对了字母,相应的空白点将在其上方放置字母。当我单击拼图单词中的第一个字母时,图像将正确显示在相应的空行上方。当我单击属于拼图单词的第二个字母时,该字母不会像第一个字母那样显示。我不明白为什么会发生这种情况。下面是我的代码: public void displayLetterPanel(char letter, int xPlace) { System.out.println("In display letter pan

我正在制作一个吊人游戏。当用户点击一个按钮(每个字母26个)时,如果猜对了字母,相应的空白点将在其上方放置字母。当我单击拼图单词中的第一个字母时,图像将正确显示在相应的空行上方。当我单击属于拼图单词的第二个字母时,该字母不会像第一个字母那样显示。我不明白为什么会发生这种情况。下面是我的代码:

public void displayLetterPanel(char letter, int xPlace)
{
    System.out.println("In display letter panel");
    JPanel panelLetter;
    JLabel lblLetter;
    String let = Character.toString(letter); 
    panelLetter = new JPanel();
    panelLetter.setBounds(xPlace, 635, 75, 200);
    frame.getContentPane().add(panelLetter);

    lblLetter = new JLabel("");
    lblLetter.setIcon(new ImageIcon(let.toUpperCase() + ".png"));
    panelLetter.add(lblLetter);
    int numLetters = 0;
    for(JPanel num : letters)
    {
        if(num != null)
        {
            numLetters++;
        }
    }

    this.letters[numLetters] = panelLetter;

    for(int i = 0; i < 12; i ++)
    {
        if (letters[i] != null)
        {
            System.out.println("In for for showing letters");
            JPanel pan = letters[i];
            pan.enable();
        }
    }

    System.out.println("end of In display letter panel");
}
public void displayLetterPanel(字符字母,int-xPlace)
{
System.out.println(“显示字母面板内”);
JPanel小组信;
JLabel-lblLetter;
字符串let=字符.toString(字母);
panelLetter=新的JPanel();
panelLetter.setBounds(xPlace,635,75200);
frame.getContentPane().add(panelLetter);
Lbletter=新的JLabel(“”);
setIcon(新的图像图标(let.toUpperCase()+“.png”);
panelLetter.add(lblLetter);
int numleters=0;
用于(JPanel编号:字母)
{
如果(num!=null)
{
numLetters++;
}
}
这个字母[numLetters]=panelLetter;
对于(int i=0;i<12;i++)
{
if(字母[i]!=null)
{
System.out.println(“用于显示字母的输入”);
JPanel pan=字母[i];
pan.enable();
}
}
System.out.println(“显示字母面板的末端”);
}

请考虑提供一个演示您的问题的示例。这不是一个代码转储,而是您正在做的一个示例,它突出了您所遇到的问题。这将减少混乱和更好的响应避免使用
null
布局,像素完美的布局在现代ui设计中是一种错觉。影响零部件单个尺寸的因素太多,您无法控制。Swing的设计初衷是与布局管理器一起工作,丢弃这些布局管理器将导致无止境的问题,您将花费越来越多的时间来纠正这些问题