java keyadapter_在java中使用keyAdapter和keyEvent时出错

我是编程的初学者,我一直在研究一个小项目,众所周知的叫做Tetris的游戏,我遇到了这个小问题,我希望你能帮助我解。我导入了:import java.awt.event.KeyAdapter和 import java.awt.event.KeyEvent能够使用我的键盘玩游戏,但是当我扩展我创建的课程以使用密钥时,它向我显示错误!在java中使用keyAdapter和keyEvent时出错

下面是代码:

addKeyListener(new TAdapter());

错误发生在这里说这样的:

The method addKeyListener(keyListener) in the type Component is not applicable for the arguments(Board.TAdapter)

类TAdapter扩展keyAdapter {//第二个发生在这里:keyAdapter不能//解析为键入 public void keyPressed(keyEvent e){//第三种情况发生在这里:keyEvent //无法解析为某个类型

if (!isStarted || curPiece.getShape() == Tetrominoes.NoShape) {

return;

}

int keycode = e.getKeyCode();

if (keycode == 'p' || keycode == 'P') {

pause();

return;

}

if (isPaused)

{return;}

switch (keycode) {

case KeyEvent.VK_LEFT:

tryMove(curPiece, curX - 1, curY);

break;

case KeyEvent.VK_RIGHT:

tryMove(curPiece, curX + 1, curY);

break;

case KeyEvent.VK_DOWN:

tryMove(curPiece.rotateRight(), curX, curY);

break;

case KeyEvent.VK_UP:

tryMove(curPiece.rotateLeft(), curX, curY);

break;

case KeyEvent.VK_SPACE:

dropDown();

break;

case 'd':

oneLineDown();

break;

case 'D':

oneLineDown();

break;

}

}

2014-06-25

jym338

+2

任何拼写:不使用keyEvent/listeners。相反,使用keyBindings通过actionMap/inputMap –

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/412071.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

luogu4365 秘密袭击 (生成函数+线段树合并+拉格朗日插值)

求所有可能联通块的第k大值的和,考虑枚举这个值: $ans\sum\limits_{i1}^{W}{i\sum\limits_{S}{[i是第K大]}}$ 设cnt[i]为连通块中值>i的个数 $ans\sum\limits_{i1}^{W}{i\sum\limits_{S}{[cnt[i]>K]-[cnt[i1]>K]}}$ $ans\sum\limits_{i1}^{W}{\sum\limits_…

学习程序开发的方法,仅供参考吧

感觉很多学习程序开发的新手,方法不对,浪费了大量时间。而j2ee由于技术分支多,学习的人更是找不到主线。其实很多东西,说白了很简单的。 还是那句老话,怕就怕走错路,走对了其实很容易。 j2ee害人的地方就是…

[vue] vue常用的修饰符有哪些?列举并说明

[vue] vue常用的修饰符有哪些?列举并说明 .trim .number .stop .prevent个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

java对象流读取完毕_从Java 8流中获取具有最大频率的对象

我有一个带有city和zip字段的对象,我们称之为Record.public class Record() {private String zip;private String city;//getters and setters}现在,我有一些这些对象的集合,我使用以下代码通过zip对它们进行分组:final Collection records; //populated collection…

Jenkins二 安装gitlab及其使用

git --version 如果没有安装git直接源码安装即可,如果安装了先删除原来的git。 yum -y remove git先安装编译git需要的包。 yum install zlib-devel perl-CPAN gettext curl-devel expat-devel gettext-devel openssl-devel下载&安装 去gitlab官网 https://abou…

编程使用资源文件实现多语言页面(In Action)

需求&#xff1a;我们的ASP.NET站点需要提供多语言支持&#xff0c;考虑到我们使用的是ASP.NET2.0&#xff0c;我们可以利用资源文件来实现。 <?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />NOTE:这里我们使用编程的方法实现&a…

[vue] vue怎么获取DOM节点?

[vue] vue怎么获取DOM节点&#xff1f; 1、document.getElementById("id")2、this.$refs.xx还有一些特殊的&#xff0c;比如this.$root、this.$parent、this.$children个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一…

java final内存机制_Java中的内存处理机制和final、static、final static总结

装载自&#xff1a;http://blog.csdn.net/wqthaha/article/details/20923579Java程序运行在JVM上&#xff0c;可以把JVM理解成Java程序和操作系统之间的桥梁&#xff0c;JVM实现了Java的平台无关性&#xff0c;由此可见JVM的重要性。所以在学习Java内存分配原理的时候一定要牢记…

[vue] vue过渡动画实现的方式有哪些?

[vue] vue过渡动画实现的方式有哪些&#xff1f; 1.使用vue的transition标签结合css样式完成动画 2.利用animate.css结合transition实现动画 3.利用 vue中的钩子函数实现动画个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很…

MySQL中的字符集涵义及使用方法总结(二)

五.乱码的避免最好让上述9个字符集变量值保持一致&#xff0c;或者至少“兼容”&#xff0c;同时也要考虑到OS中locale的值。当然&#xff1a;character_set_system例外&#xff0c;它是存储和表示元信息使用的字符集&#xff0c;一般都是ascii串&#xff0c;使用utf8和使用lat…

vim 多行添加注释,取消注释

转发 已经验证 https://blog.csdn.net/SuiXin_123/article/details/81393397转载于:https://www.cnblogs.com/pingg/p/10509301.html

c java c时间格式处理_c:foreach 对时间类型进行格式化

程序(三)Input parameters:Date: 2004/04/01:13:30:00Java format: Thu Apr 01 13:30:00 CST 2004isoDate: 20040531T235959Java format: Mon May 31 23:59:59 CDT 200DatesTag OutputAttribute: value; required. Tag has no body. 注释&#xff1a;value属性 日期对象200…

[vue] vue父子组件双向绑定的方法有哪些?

[vue] vue父子组件双向绑定的方法有哪些&#xff1f; 1.利用对象的引用关系来实现 2.父子组件之间的数据传递 3.使用.sync修饰符个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通…

调用未知DLL中的导出函数

不知道诸位看官是否有过这样的经历&#xff1a;在不经意之间发现一个DLL文件&#xff0c;它里边有不少有趣的导出函数——但是由于你不知道如何调用这些函数&#xff0c;所以只能大发感慨而又无能为力焉。固然有些知名的DLL可以直接通过搜索引擎来找到它的使用方式&#xff08;…

Sqlserver内存管理:限制最大占用内存(转载)

https://blog.csdn.net/donghustone/article/details/83338185?tdsourcetags_pcqq_aiomsg 转载于:https://www.cnblogs.com/wangjunwei/p/10510138.html

批处理 java环境_java环境配置简单批处理方法一键OK

Java编程首要工作就是安装JDK(Java Development Kit)。一通NEXT点完安装包后就是最重要的环境变量设置了。也许有人会问为什么要设置环境变量&#xff0c;要理解这点&#xff0c;首先要明白环境变量的作用。环境变量可以简单的理解为路径导向。例如Windows里面的临时文件夹存放…

[vue] vue部署上线前需要做哪些准备工作?

[vue] vue部署上线前需要做哪些准备工作&#xff1f; router 是不是hash 是否需要配置nginx , publicPath , 是不是要配置cdn个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关…

c#2.0的新特性--泛型

c#2.0中引入了许多新的语言特性&#xff1a;比较重要的有4个&#xff0c;泛型&#xff08;Generics&#xff09;、匿名方法&#xff08;Annorymous Methods&#xff09;、迭代器&#xff08;Iterators&#xff09;、和局部类&#xff08;Partial Types&#xff09;. 泛型 是c…

构建之法与博客首秀

问题一&#xff1a;软件的安全功能是指什么呢&#xff1f; 我看了《构建之法》第七页对飞机安全功能的的描述&#xff0c;想知道在软件中是否有类似飞机的安全功能&#xff1f;如果有&#xff0c;具体是指什么功能呢&#xff1f;我在查阅资料后只找到对软件安全的的总结(软件安…

java接口import_深入理解Java架构师在组件注册@Import导入容器(ImportSelector接口)的神操作!...

ImportSelector&#xff1a;返回需要导入的组件的全类名数组创建一个实现了ImportSelector接口的类&#xff0c;然后让入Import中。ImportSelector的实现类包含了所有需要导入到容器中的组件。public class StuConfigurationImportSerlect implements ImportSelector {Override…