public void paintComponent(Graphics g){
g.drawImage(back,0,0,this);
if(winner || loser){
g.setColor(Color.white);
g.setFont(new Font(null,Font.BOLD,55));
g.drawString("SCORE:",350,250);
g.drawString(""+score,600,250);
g.drawImage(enemy,100,500,this);
g.drawImage(enemy2,175,500,this);
g.drawImage(enemy3,250,500,this);
g.drawImage(enemy5,700,515,this);
g.drawImage(enemy6,775,515,this);
g.drawImage(enemy7,850,515,this);
g.drawImage(enemy4,495,515,this);
if(winner){
g.drawImage(winnerPic,200,50,this);
}
else{
g.drawImage(gameOver,220,50,this);
}
g.drawImage(endingTitle,190,590,this);
JButton menu=new JButton("Return to menu");
menu.setSize(200,100);
menu.setLocation(400,400);
}
}
如何在屏幕上显示按钮。请详细说明,如何使用摆动布局样式。
答案 0 :(得分:2)
首先,您有一个显示在JFrame上的容器(例如JPanel)。 装箱后,您必须将其添加到容器中。大多数情况下,您希望容器具有布局,例如BorderLayout。
JButton menu = new JButton("Back to the menu");
container.add(menu, BorderLayout.CENTER);
编辑: 如果这不是您想要实现它的方式,它将至少帮助您理解层次结构。
public void buttonExample(){
JFrame frame = new JFrame("Button Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.setPreferredSize(new Dimension(200, 100));
JButton button = new JButton("Return to the menu");
panel.add(button, BorderLayout.CENTER);
frame.add(panel);
frame.pack();
frame.setVisible(true);
}