2013-03-15 116 views
-2

我正在尝试做一个国际象棋游戏,但没有显示出来。请帮忙。java JFrame没有显示

+0

我冒昧地将您的代码格式化,使其更具可读性。提示:制表符在代码块中不起作用。你必须使用空格。 – ApproachingDarknessFish 2013-03-15 00:41:33

回答

2

添加到什么@气垫船完整的鳗鱼已经说过,没有什么显示出来,因为这for循环:

for (d = 0; d < 7; b++) { 

你永远不增加d让你在这个循环中永留所以你永远不会得到显示JFrame。你可能想

for (d = 0; d < 7; d++) { 

之外,还有一些ArrayIndexOutOfBoundsException案件,最明显的,这是一个:

for (int x = 0; x < 9; x++) { 
    for (int y = 0; y < 9; y++) { 
     panel.add(pad[x][y]); 
    } 
} 

你怎么可以遍历9×9按钮当你只有7 x 7?

+0

Reimeus〜非常感谢你!!!!!!! – jdg 2013-03-15 01:04:36

5

你在哪里添加任何东西到ChessSquare JPanel?换句话说,你在ChessSquare课程中看到this.add(...)或只是add(...)

回答:不 - 哪里 - 你不添加什么东西它,所以什么都没有出现。

+0

*“so nothing show up”* - 所以它的设计如下图所示,然后 – MadProgrammer 2013-03-15 00:28:34

+0

在底部,我做了一个循环尝试将面板添加到面板 – jdg 2013-03-15 00:31:03

+0

@jdg:对,将它添加到*** a JPanel ,而不是*** JPanel。同样,没有任何内容添加到表示当前对象的JPanel中,“this this”。例如,什么是名为“面板”的JPanel添加到?没有。所以没有显示。我建议你摆脱面板变量,并简单地添加东西到'this'。 – 2013-03-15 00:36:05