求java相对简单的程序设计!应该有笔记。
进口?javax . swing . *;
进口?javax . swing . text . position;
进口?javax . swing . text . abstract document . content;
进口?com.briup.gui1。GridLayoutTest
进口?Java . awt . *;
进口?Java . awt . event . *;
公共?班级?鼠标游戏?延伸?JFrame?器物?ActionListener?{
私人?集装箱?contentPane
私人?JComboBox?水平;
私人?JLabel?centLb1,?timelb 1;
私人?JButton?startBtn
//?九歌老鼠洞
私人?JButton[]?btns
//?两个定时器,一个定时器,一个鼠标移动的位置。
私人?定时器?定时器,?职位;
//
私人?ImageIcon?形象;
//
私人?int?指数;
私人?布尔?旗帜;
公共?鼠标播放(){
This.setTitle("重击一只老鼠");
this.setBounds(200,?200,?350,?400);
contentPane?=?this . getcontentpane();
this . setdefaultcloseoperation(this。EXIT _ ON _ CLOSE);
//定时器初始化时,需要指定触发的事件间隔(单位为毫秒),并添加电离监听器。
定时器?=?新的?定时器(1000,?这个);
位置?=?新的?定时器(700,?这个);
//导入图片的路径。
形象?=?新的?image icon(" src/com/briup/gui2/mouse . jpg ");
//图像?=?新的?image icon("/home/briup/mouse . jpg ");
init GUI();
}
publicvoid?initGui()?{
contentPane.setLayout(新?BorderLayout());
JPanel?北?=?新的?JPanel();
水平?=?新的?JComboBox(新?String[]{“易”,?“一般般”,?“硬”});
level.addItemListener(新?ItemListener(){
公共?作废?itemStateChanged(ItemEvent?e)?{
对象?obj?=?e . getitem();
int?时间?=?0;
如果(“容易”。equals(obj)){
时间?=?700;
}别的?如果(“一般般”。equals(obj)){
时间?=?400;
}别的?如果(“硬”。equals(obj)){
时间?=?100;
}
位置?=?新的?定时器(时间,?mouse play . this);
}});
timeLb1?=?新的?JLabel(" 10 ");
centLb1?=?新的?JLabel(" 0 ");
startBtn?=?新的?JButton(" start ");
startbtn . addactionlistener(this);
north.add(级别);
north.add(新?JLabel(" time:"));
north . add(timelb 1);
north.add(新?JLabel(" center:"));
north . add(centlb 1);
north . add(start BTN);
contentPane.add(north,BorderLayout。北);
JPanel?中心?=?新的?JPanel();
center.setLayout(新?GridLayout(3,3));
btns?=?新的?JButton[9];
for(int?I = 0;?我& ltbtns.lengthi++){
btns[i]?=?新的?JButton(" ");
btns[i]。set enabled(false);
btns[i]。addActionListener(this);
center . add(btns[I]);
}
contentPane.add(center,BorderLayout。中心);
}
公共?作废?go(){
this . set visible(true);
}
公共?作废?actionPerformed(ActionEvent?e)?{
对象?obj?=?e . getsource();
if(obj==startBtn){
startbtn . set enabled(false);?//开始按钮不可操作。
level . set editable(false);?//?下拉框不可操作。
for(int?I = 0;?我& ltbtns.length?i++)
btns[i]。setEnabled(真);?//可以操作九个按钮
//启动倒计时器和鼠标。
timer . start();
position . start();
timelb 1 . settext(" 10 ");
centlb 1 . settext(" 0 ");
}
if(obj==timer){?//?先获取页面的值,然后判断是否为0,并处理相应的逻辑。
int?时间?=?integer . parse int(timelb 1 . gettext()。trim());
if(time==0){
timeLb1.setText("游戏?完了!”);
timer . stop();
position . stop();
startbtn . set enabled(true);
level.setEnabled(真);
for(int?I = 0;?我& ltbtns.length?i++){
btns[i]。set enabled(false);
btns[i]。setIcon(null);
btns[i]。setText(" ");
}
}否则{
timelb 1 . settext(-time+" ");
}
}
if(obj = = position){
for(int?I = 0;?我& ltbtns.length?i++)
btns[i]。setIcon(null);
指数?=?(int)(math . random()* 9);
索引。setIcon(图像);
//btns[index]。setText(" ");
旗帜?=?假的;
}
for(int?I = 0;?我& ltbtns.length?i++){
if(btns[I]= = obj & amp;& amp(!旗帜)& amp& ampi==index){
int?美分?=?integer . parse int(centlb 1 . gettext()。trim());
centlb 1 . settext(++cent+" ");
旗帜?=?真实;
}
}
}
公共?静电?作废?main(String[]?args)?{
新的?鼠标游戏()。go();
}