一、引入
在玩游戏的过程中,如果我想让它一键通过,我们就可以给它安排一个快捷键,例如 w
。
当我按下 w
的时候,游戏界面就变成了最终的效果图片。
如何实现?我们是不是也是在游戏的窗体中触发的事件,因此同样的,我们需要给整个窗体添加 键盘监听
,然后再对 w
做一个判断就行了。
二、代码实现
找到 GameJFrame类
中的 initJFrame()
方法,我们任然需要去给整个窗体添加 键盘监听事件
,但是这个代码在之前已经写过了,可以直接忽略。
我们直接找到 keyReleased()
重写方法就行了。
通过打印 code
的值,可以知道 w
所对应的数字是 87
,因此我们直接对 87
来做一个判断就行。
当按下 w
的时候,我们直接将图片展示为最终效果,最后不要忘记重新去加载图片!
//松开按键的时候会调用这个方法
@Override
public void keyReleased(KeyEvent e) {
//对上,下,左,右进行判断
//左:37 上:38 右:39 下:40
int code = e.getKeyCode();
System.out.println(code);
if (code == 37) {
.....
} else if (code == 38) {
.....
} else if (code == 39) {
.....
} else if (code == 40) {
.....
} else if (code == 65) {
.....
} else if (code == 87) {
// 直接 new一个新数组
data = new int[][]{
{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,0}
};
initImage();
}
}
代码写完后,打开 App
右键运行,按下 w
,可以发现直接 一键胜利
!