资源描述:
《华容道java提高型实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、XX学校提高型实验报告实验课题JAVA综合程序设计(提高型)(实验类型:□综合性■设计性□应用性)实验课程面向对象程序设计实验时间学生姓名:专业班级:学号:成绩:教师签名:一.实验目的和要求1、深入了解图形用户界面基木组件窗口、按钮、文木框、选择框、滚动条等的使用方法,了解如何使用布局管理器对组件进行管理,以及如何使用Java的事件处理机制。2、将所学知识进行综合运用,模仿设计具有实际意义的应用程序。3、锻炼使用新类(没有介绍的)类的能力。二.实验条件硬件:计算机一台软件:EditPlus、JDK1.6三.实验原理分析编写一个华界道传统的智利游戏,练习使用布
2、局管理器设计一个华容道游戏界面,并练习使用事件监听器(鼠标事件、键盘事件和焦点事件)实现按钮的移动。首先是界面设计,该界面主要包括十个人物按钮(马、曹操、关羽等)以及旁边的四个边框按钮和重新开始按钮。对于人物按钮,我们可以创建Button按钮的子类,在该类屮定义按钮的一些新的属性和焦点事件监听器,如按钮的标签名、按钮的颜色、按钮获得或失去焦点事件。同时在设计该界面时要考虑到各个按钮的位置、大小等情况。其次,是对界而上的各人物按钮添加相应的相应事件(鼠标事件、键盘事件),通过这两种事件去完成界面上各人物按钮的移动。对重新开始按钮定义动作事件(ActionEve
3、nt)完成界面初始化功能(也就是各人物按钮重新归位)。U!L实验方案或步骤程序代码:importjava.awt.*;importjava.applet.*;importjava.awt.event.*;importjavax.swing.*;publicclassHuaRongRoad{publicstaticvoidmain(Stringargs[]){newHua_Rong_Road();}}classPersonextendsJButtonimplementsFocusListener{intnumber;Colorc;Person(intnumbe
4、r,Strings){super(s);this.number=number;c=getBackground();setFont(newFont(n宋体",Font.CENTER_BASELINE,14));addFocusListener(this);//当前按钮注册为本身的监视器publicvoidfocusGained(FocusEvente){setBackground(Color.cyan);}publicvoidfocusLost(FocusEvente){setBackground(c);}}implementsclassHua_Rong_Ro
5、adextendsJFrameKeyListener,MouseListener,ActionListener{Personperson[]=newPerson[10];JButtonleft,right,above,below;JButtonrestart=newJButton(”重新开始’’);Containercon;publicHua_Rong_Road(){init();setBounds(100,100,320,360);setVisible(true);validate();setDefaultCloseOperation(JFrame.EXI
6、T_ON_CLOSE);}publicvoidinit(){con=getContentPane();con.setLayout(null);con.add(restart);restart.setBounds(100,5,120,25);”,••许”,”兵”,”兵”,”兵”,”兵//将当前窗口注册为//将当前窗门注册restart.addActionListener(this);Stringname[]={"曹操","关羽张","刘",for(inti=O;i7、person[i].addKeyListener(this);person[i]的KeyEvent事件监视器person[i].addMouseListener(this);为person[i]的MouseEvent事件监视器con.add(personfi]);}person[0].setBounds(l04,54,100,100);person[1].setBounds(104,154,100,50);person[2].setBounds(54,154,50,100);person[3].setBounds(204,154,50,100);person
8、,4].setBounds(54,54,50,100