2 回答

TA貢獻(xiàn)1853條經(jīng)驗 獲得超9個贊
你的gamearea類的內(nèi)容窗格的布局管理器是什么?如果你沒有設(shè)置它,它默認(rèn)為一個BorderLayout,然后當(dāng)你向它添加兩個組件時,第一個進(jìn)入CENTER,第二個將替換首先在中心。
您的組件不應(yīng)是 JFrame 的子類。讓它擴(kuò)展 JPanel 并使用適當(dāng)?shù)?LayoutManager 將子項放置在面板中,然后將該面板添加到您隨后顯示的 JFrame 中。
此外,您應(yīng)該遵循 Java 約定并以大寫字母開頭類的名稱(GameArea 或 Gamearea,而不是 gamearea)。

TA貢獻(xiàn)1827條經(jīng)驗 獲得超4個贊
如果你想在你的程序中正確實現(xiàn) setComponentZOrder(),你必須在面板中添加對象,然后你可以使用 setComponentZOrder。
panel.setLayout(null);
panel.add(desk);
panel.add(ball);
panel.setComponentZOrder(ball,0);
panel.setComponentZOrder(desk,1);
setContentPane(panel);
desk.setBounds(0,0,800,600);
ball.setBounds(375,232,25,25);
添加回答
舉報