当前位置: 代码迷 >> Java相关 >> [求助]请教一个随机的方法!
  详细解决方案

[求助]请教一个随机的方法!

热度:152   发布时间:2006-02-16 00:19:00.0
[求助]请教一个随机的方法!

这是我改的代码,还请教哪位朋友帮我改一下,谢谢啦!
import java.awt.*;
import java.awt.event.*;
import java.util.*;

class taoqidebutton extends Frame {

public taoqidebutton() {
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dispose();
System.exit(0);
}
});
}

public static void main(String args[]) {

int a,b;
Random rnd = new Random();
taoqidebutton mainFrame = new taoqidebutton();
Panel pnl=new Panel(new GridLayout(5,5));
Label lab=new Label("试试看,你永远也不会点到这个淘气的按钮!",Label.CENTER);

mainFrame.setLayout(null);

lab.setBounds(0,40,480,20);
lab.setFont(new Font("Serief",Font.ITALIC+Font.BOLD,18));
lab.setForeground(Color.yellow);
pnl.setBounds(40,80,400,400);

MyButton btn[];
btn=new MyButton[25];
for(int i=0;i<btn.length;i++){
btn[i]=new MyButton("你点不到我!");
}

  /*下面的for循环是有问题的代码,肯定不对!
    怎么就在几个按钮里转悠?哪位朋友再帮我改一改
   这个地方怎样随机显示一个按钮点
    完后随机显示的另一个按钮? */

   for(int i=0;i<btn.length;i++){  
a=rnd.nextInt(25);
 btn[i].setAnother(btn[a]);

}

for(int i=0;i<btn.length;i++)
pnl.add(btn[i]);

mainFrame.setLocation(300,150);
mainFrame.setSize(480, 500);
mainFrame.setBackground(Color.red);
for(int i=0;i<btn.length;i++)
btn[i].setBackground(Color.yellow);
mainFrame.setTitle("淘气的按钮!");

mainFrame.add(lab);
mainFrame.add(pnl);

mainFrame.setVisible(true);
for(int i=0;i<btn.length;i++)
btn[i].setVisible(false);

a=rnd.nextInt(25);
btn[a].setVisible(true);

}
}


class MyButton extends Button
{
private MyButton another=null; //这个地方加null是什么意思?
public MyButton(String title)
{
super(title);
enableEvents(AWTEvent.MOUSE_MOTION_EVENT_MASK);
}

public void setAnother(MyButton another){
this.another=another;

}

protected void processMouseMotionEvent(MouseEvent e){
setVisible(false);
another.setVisible(true);
}

}

搜索更多相关的解决方案: 随机  

----------------解决方案--------------------------------------------------------
另外为什么启动的一瞬间所有的按钮都显示啊?怎么消除这种情况啊?
还有怎么样让界面和按钮更漂亮一点?谢谢大家!
----------------解决方案--------------------------------------------------------
  相关解决方案