小编这次要给大家分享的是java如何实现2048游戏功能,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。
功能要求:2048的基本界面,能够实现2048的游戏功能。
总思路:两个类:Game和GameListener。
Game负责界面的实现和paint方法的重写
GameListener负责实现键盘和鼠标事件的处理。移动方法,相加方法,输赢判断和随机数的出现都要在键盘监听的方法中实现。
实现分析:要实现2048游戏,首先需要考虑2048都有些什么?
界面实现:
2048的游戏界面很简单,就是一些方格和数字。要实现这样的界面,我们可以考虑一下使用Java的绘图功能。具体来说就是使用JFrame类提供的Graphics对象进行绘图。2048界面由一个大的矩形背景和包含数字的许多小方块组成。Graphics对象的绘制矩形的方法就能实现背景和小方格的绘制。小方格内的数字则可以使用graphics的drawString方法来绘制。只需要在绘制的时候注意一下颜色就好。界面实现要拥到的类主要是JFrame类。
基本界面实现代码,不过是一些按钮之类的,没什么好说的。
private void initUI() { setTitle("2048"); setDefaultCloseOperation(3); setSize(600, 700); setLocationRelativeTo(null); this.setLayout(null); //添加分数 jl2 = new JLabel("分数:0"); jl2.setFont(new Font("黑体", Font.BOLD, 30)); jl2.setBounds(20, 30, 200, 50); this.add(jl2); //添加开始按钮 ImageIcon start=new ImageIcon("res/start.png");//开始游戏图标,随意替换就好 startJB=new JButton(start); startJB.setBounds(280, 40, 120, 30); startJB.setFocusable(false); startJB.setBorderPainted(false);//设置按钮的边框为空 startJB.setFocusPainted(false); startJB.setContentAreaFilled(false);//设置按钮的边框内填充颜色 //添加退一步按钮 ImageIcon back=new ImageIcon("res/backicon.png");//游戏结束图标,随意替换就好 backJB=new JButton(back); backJB.setBounds(430, 40, 120, 30); backJB.setFocusable(false); backJB.setBorderPainted(false); backJB.setFocusPainted(false); backJB.setContentAreaFilled(false); this.add(startJB); this.add(backJB); setVisible(true); GameListener gl = new GameListener(this, arry, jl2,startJB,backJB); addKeyListener(gl); startJB.addActionListener(gl); backJB.addActionListener(gl); }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756