当前位置: 代码迷 >> Java相关 >> 我写的一个打地鼠的游戏,貌似有点问题
  详细解决方案

我写的一个打地鼠的游戏,貌似有点问题

热度:105   发布时间:2007-06-21 22:02:23.0
我写的一个打地鼠的游戏,貌似有点问题

以下是我写的一个关于打地鼠的游戏程序,为什么运行起来有点问题,谁能帮我看一下啊
package com;

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

public class MousePlay implements ActionListener
{
private JFrame frame;
private Container contentPane;

private JButton btn[][]=new JButton[3][3];
private JLabel timeLbl,countLbl;

private Timer btnTimer,timer;
private JButton startBtn,exitBtn;

private int x,y;

public MousePlay()
{
frame=new JFrame("游戏");
frame.setBounds(200,200,500,500);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
contentPane=frame.getContentPane();
btnTimer=new Timer(500,this);
timer=new Timer(1000,this);
initGUI();
}

public void initGUI()
{
contentPane.setLayout(new BorderLayout());
timeLbl=new JLabel("0");
countLbl=new JLabel("0");

JPanel p1=new JPanel(new GridLayout(1,2));
p1.add(timeLbl);
p1.add(countLbl);

JPanel p2=new JPanel(new GridLayout(3,3));
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
btn[i][j]=new JButton(" ");
p2.add(btn[i][j]);
btn[i][j].setEnabled(false);
btn[i][j].addActionListener(this);
}
}
JPanel p3=new JPanel(new FlowLayout());
startBtn=new JButton("开始");
exitBtn=new JButton("退出");
p3.add(startBtn);
p3.add(exitBtn);

contentPane.add(p1,BorderLayout.NORTH);
contentPane.add(p2,BorderLayout.CENTER);
contentPane.add(p3,BorderLayout.SOUTH);

startBtn.addActionListener(this);
exitBtn.addActionListener(this);
}

public void actionPerformed(ActionEvent e)
{
if(e.getSource()==timer)
{
int v=timeLbl.getText().trim();
v--;
timeLbl.setText(v+"");
if(v==0)
{
timer.stop();
btnTimer.stop();
JOptionPane.showMessageDialog(null,new String("您的分数为"+countLbl.getText()),"恭喜!",JOptionPane.INFORMATION_MESSAGE,new ImageIcon("logo.gif"));

timeLbl.setText("0");
countLbl.setText("0");

for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
{
btn[i][j].setEnabled(false);
btn[i][j].setText("");
}
startBtn.setEnabled(true);

}
}

if(e.getSource()==btnTimer)
{
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
btn[i][j].setText("");
x=(int)(Math.random()*3);
y=(int)(Math.random()*3);
btn[x][y].setText("Mouse!");
}
if(e.getSource()==startBtn)
{
timeLbl.setText(20+"");
timer.start();
btnTimer.start();
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
btn[i][j].setEnabled(true);
startBtn.setEnabled(false);
}
if(e.getSource()==exitBtn)
{
System.exit(0);
}
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
if(e.getSource()==btn[i][j])
{
if(i==x&&j==y)
{
int cent=Integer.parseInt(countLbl.getText().trim());
cent++;
countLbl.setText(cent+"");
}
}
}
}

}

public void go()
{
frame.setVisible(true);
}

public static void main(String args[])
{
(new MousePlay()).go();
}

搜索更多相关的解决方案: 地鼠  游戏  

----------------解决方案--------------------------------------------------------
  相关解决方案