java程序设计实例制作拼图游戏

java程序设计实例制作拼图游戏

ID:7858081

大小:151.50 KB

页数:16页

时间:2018-02-28

java程序设计实例制作拼图游戏_第1页
java程序设计实例制作拼图游戏_第2页
java程序设计实例制作拼图游戏_第3页
java程序设计实例制作拼图游戏_第4页
java程序设计实例制作拼图游戏_第5页
资源描述:

《java程序设计实例制作拼图游戏》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Java程序设计实例:制作拼图游戏本例知识点一句话讲解新学知识使用Image类导入图片使用MouseEvent类处理鼠标事件已学知识使用Point类转换坐标使用Graphics类管理屏幕显示一、练习具体要求本练习制作拼图游戏,运行效果如图99-1所示。执行本实例后,用鼠标拖动选中的小图片进行拼接,可以拼成一幅完整的图片。本实例的知识点有:鼠标事件的监听,Graphics类和Image类的应用。二、程序及注释(1)编程思路:本练习因为要制作拼图游戏,所以首先要实现图片的导入。这是通过getImage()函数来实现的,该函数有两个参数,第一个参数指明图片

2、的路径,第二个参数指明图片的名称。然后,因为要实现图片摆放的随意性,所以要通过initgame()函数来实现。Initgame()函数是自写函数,在函数体内,通过调用Math.random()函数产生随机数,用来达到图片位置摆放的随意性和随机性。最后,因为要实现人机交互.,所以首先要通过一系列函数来实现对鼠标事件的监听和响应,这是通过函数addMouseListener(this)和addMouseMotionListener(this)来完成的。这样程序会区分用户对鼠标不同的操作,正确执行相应的功能。(2)程序实现及注释:importjava.aw

3、t.*;importjava.applet.*;importjava.awt.event.*;publicclasspintuextendsAppletimplementsMouseListener,MouseMotionListener{privateImagepicture;privateGraphicsbuffer;privateImagepic[];privateImageoff_pic[];privateGraphicsoff_buf[];privateImageoff_screen;privateGraphicsoff_buffer;pr

4、ivateImageoff_drag;privateGraphicsoff_drag_buf;privateintmap[][];privateintran[];privateintwidth=0;privateintheight=0;privateintlastx;privateintlasty;privateintlast_downx;privateintlast_downy;privateintstepx;privateintstepy;privatebooleanchoose;privatebooleanclick[][];privatebo

5、oleanm_down;privatebooleanm_drag;privatebooleannot_redraw;privatebooleanable;Fontfont1,font2;//程序的初始化publicvoidinit(){resize(640,480);pic=newImage[3];off_pic=newImage[16];off_buf=newGraphics[16];map=newint[4][4];ran=newint[15];for(inta=0;a<16;a++)map[a/4][a%4]=a;for(inta=0;a<15

6、;a++)ran[a]=a;click=newboolean[4][4];MediaTrackertracker=newMediaTracker(this);//要载入的图片pic[0]=getImage(getCodeBase(),"PICTURE0.JPG");pic[1]=getImage(getCodeBase(),"PICTURE1.JPG");pic[2]=getImage(getCodeBase(),"PICTURE2.GIF");tracker.addImage(pic[0],0);tracker.addImage(pic[1],0)

7、;tracker.addImage(pic[2],0);try{tracker.waitForID(0);}catch(InterruptedExceptione){}//设置字体font1=newFont("TimesRoman",Font.BOLD,48);font2=newFont("TimesRoman",Font.BOLD,32);width=640;height=480;//初始化主界面initForm();//添加鼠标监听事件addMouseListener(this);addMouseMotionListener(this);}//面

8、板初始化voidinitForm(){this.setBackground(Color.orange);if

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。