java会动的乌龟代码_请教:一只乌龟的运动
请教:一只乌龟的运动
import java.awt.*;
import java.awt.event.*;
import java.util.EventListener;
/*打算你按上,乌龟上爬,按下,乌龟下爬。但是一直没有repaint,怎么回事呀,请教下什么地方错了,怎么才能动。*/
public class WUGUI{
public static void main(String args[]){
Frame f = new Frame();
f.setSize(1024, 860);
MyPanel m = new MyPanel();
f.add(m);
f.setVisible(true);
}
}
class MyPanel extends Panel implements KeyListener{
int b = 250;//body Y
int h = 200;//head Y
int f1 = 270;//hand F
int f2 = 270;//hand F
int s1 = 400;//hang S
int s2 = 400;//hang S
int ey = 220; boolean a = true;
public void paint(Graphics g){
g.setColor(Color.BLUE); /* draw backGround begin*/
g.fillRect(1,1,1024,860);
g.setColor(Color.GREEN);
g.fillOval(330,b,140,200); /* draw body */
g.fillOval(370,h,60,100);
g.setColor(Color.BLACK);
g.fillOval(370,ey,10,10);
g.fillOval(420,ey,10,10); /* draw head */
g.setColor(Color.GREEN);
g.fillOval(310,f1,70,30); /* draw left up */
g.fillOval(310,s1,70,30); /* draw left down */
g.fillOval(420,f2,70,30); /* draw right up*/
g.fillOval(420,s2,70,30); /* draw right down*/
}
public void keyTyped(KeyEvent e) {
}
public void keyPressed(KeyEvent e) {
// TODO: Add your code here
if(KeyEvent.VK_UP == e.getKeyCode())
{
if(a == true)
{
a = false;
f1=f1-10;
s2=s2-10;
b=b-5;
h=h-5;
ey=ey-5;
}else{
a = true;
f2=f2-10;
s1=s1-10;
b=b-5;
h=h-5;
ey=ey-5;
}
}
if(KeyEvent.VK_DOWN == e.getKeyCode())
{
if(a == true)
{
a = false;
f2=f2+10;
s1=s1+10;
b=b+5;
h=h+5;
ey=ey+5;
}else{
a = true;
f1=f1+10;
s2=s2+10;
b=b+5;
h=h+5;
ey=ey+5;
}
}
repaint();
}
public void keyReleased(KeyEvent e) {
}
}
搜索更多相关的解决方案:
乌龟 运动
----------------解决方案--------------------------------------------------------
import java.awt.*;
import java.awt.event.*;
import java.util.EventListener;
/*打算你按上,乌龟上爬,按下,乌龟下爬。但是一直没有repaint,怎么回事呀,请教下什么地方错了,怎么才能动。*/
public class WuGui{
public static void main(String args[]){
Frame f = new Frame();
f.setSize(1024, 860);
MyPanel m = new MyPanel();
f.add(m);
f.setVisible(true);
}
}
class MyPanel extends Panel implements KeyListener{
int b = 250;//body Y
int h = 200;//head Y
int f1 = 270;//hand F
int f2 = 270;//hand F
int s1 = 400;//hang S
int s2 = 400;//hang S
int ey = 220; boolean a = true;
public MyPanel(){
this.addKeyListener(this);
}
public void paint(Graphics g){
//super.paint(g);
g.setColor(Color.BLUE); /* draw backGround begin*/
g.fillRect(1,1,1024,860);
g.setColor(Color.GREEN);
g.fillOval(330,b,140,200); /* draw body */
g.fillOval(370,h,60,100);
g.setColor(Color.BLACK);
g.fillOval(370,ey,10,10);
g.fillOval(420,ey,10,10); /* draw head */
g.setColor(Color.GREEN);
g.fillOval(310,f1,70,30); /* draw left up */
g.fillOval(310,s1,70,30); /* draw left down */
g.fillOval(420,f2,70,30); /* draw right up*/
g.fillOval(420,s2,70,30); /* draw right down*/
}
public void keyTyped(KeyEvent e) {
}
public void keyPressed(KeyEvent e) {
// TODO: Add your code here
if(KeyEvent.VK_UP == e.getKeyCode())
{
if(a == true)
{
a = false;
f1=f1-10;
s2=s2-10;
b=b-5;
h=h-5;
ey=ey-5;
}else{
a = true;
f2=f2-10;
s1=s1-10;
b=b-5;
h=h-5;
ey=ey-5;
}
repaint();
}
if(KeyEvent.VK_DOWN == e.getKeyCode())
{
if(a == true)
{
a = false;
f2=f2+10;
s1=s1+10;
b=b+5;
h=h+5;
ey=ey+5;
}else{
a = true;
f1=f1+10;
s2=s2+10;
b=b+5;
h=h+5;
ey=ey+5;
}
repaint();
}
}
public void keyReleased(KeyEvent e) {
}
}
----------------解决方案--------------------------------------------------------
你没注册监听器 所以他就不动 不过你的乌龟画的还真强 牛
----------------解决方案--------------------------------------------------------
这只乌龟果然够强,哈哈.
努力!
----------------解决方案--------------------------------------------------------
555 我运行他的乌龟,结果不能结束~~~!气死我了
----------------解决方案--------------------------------------------------------
哇,我运行了一下,乌龟画得太强了,人才
至于为什么不会动,那是因为你没有注册事件监听
还有,键盘事件应该注册到顶级容器上,比如JFrame
----------------解决方案--------------------------------------------------------
乌龟画的真不错
两个眼睛炯炯有神
事件没有被监听
----------------解决方案--------------------------------------------------------
真牛,得向你学习 !
----------------解决方案--------------------------------------------------------
谢谢各位
就是没有加上addKeyListener()函数
谢谢各位帮忙啊!
----------------解决方案--------------------------------------------------------
乌龟画得好厉害啊,能不能把改好的程序贴出来看一下?学习一下。
----------------解决方案--------------------------------------------------------
java会动的乌龟代码_请教:一只乌龟的运动相关推荐
- java如何实现乌龟爬行_请教:一只乌龟的运动
import java.awt.*; import java.awt.event.*; import java.util.EventListener; /*打算你按上,乌龟上爬,按下,乌龟下爬.但是一 ...
- java关于泛型的实验代码_[ Java学习 ] 泛型类的应用实验
成文原因: 这篇文章是我这周所做的 Java 实验题的一个小总结. 这次实验让我深刻赞同了我们 Java 老师在这节实验课前告诉我们的话: 最重要的是把问题想明白,它要怎么拆分成几个类,每个类里究竟需 ...
- java关于泛型的实验代码_[改善Java代码]强制声明泛型的实际类型
Arrays工具类有一个方法asList可以把一个变长参数或数组变成列表,但是它有一个缺点:它所生成的List长度是不可改变的,而这在我们的项目开发中很不方便. importjava.util.Arr ...
- java中拷贝文件的代码_拷贝文件夹中的所有文件到另外一个文件夹
[java]代码库/** * * 拷贝文件夹中的所有文件到另外一个文件夹 * * @param srcDirector * 源文件夹 * * @param desDirector * 目标文件夹 * ...
- java程序设计及实践实践代码_杭+新闻:姚争为老师把程序设计讲“活”了,满是代码的枯燥课程被学生“秒杀”...
通讯员 陈鑫 杨鹏飞 记者 方秀芬 作为专业选修课,Java程序设计和Web程序设计,这两门满是代码的课程,看似很枯燥,但在杭师大信息科学与工程学院却爆红,每学期都遭"秒杀",以前 ...
- java当中有关循环的代码_有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下。1、循环输出1到100之间所有能被3或能被4整除的数。pack...
有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下. 1.循环输出1到100之间所有能被3或能被4整除的数. package com.hz.loop02; /** ...
- java开闭原则实现代码_向对象的六大原则
前言 我们都知道面向对象有六大原则,23种设计模式.它们可以指导我们如何写出更加优秀的代码.六大原则是基础,我们面向对象编程应该尽量遵从这六大原则,才能写出优秀的代码. 23种设计模式是前人为我们总结 ...
- java学生成绩降序代码_输入5名学员成绩,降序排列输出
代码和任务 import java.util.Scanner; /*copyright(c)2015 csdn学院 *All right reserved. *文件名称:test.java *作者:张 ...
- java程序员的浪漫代码_专属于程序员的浪漫-Java输出动态闪图iloveyou
代码测试可用,运行结果非常辣眼睛,有种二十一世纪初流行于广大中小学生之间的失落非主流的感觉! 还是比较有参考价值的,获取当前日期时间,日期类格式化,图形界面的开发等. java awt实现小程序动态闪 ...
最新文章
- 项目中用到的BAPI合集
- ueditor配置文件配置自动段落缩进_vimrc里各种配置的含义
- 《Java程序设计》第五周学习总结
- Linux内核3.0移植并基于Initramfs根文件系统启动
- pycharm连接sqlite
- 第四周作业 简单地邮件发送实现
- ip地址怎么设置才有效_如果想减肥,怎么拆解目标才是有效的?
- 第二届ATI获奖自动化测试工具介绍
- 微信小程序 服务器代理转发,微信小程序转发功能
- named_struct类型怎么用
- 【C++】关于set的一些奇怪问题:错误C2676 二进制“<”:“const _Ty”不定义该运算符或到预定义运算符可接收的类型的转换
- 麻雀虽小五脏俱全----ZC评价系统
- 腹肌锻炼视频(02):八种基本动作
- C++下的utility
- 沧小海基于xilinx srio核的学习笔记之第五章 Rapidio协议详述
- Pr:导出设置之编码设置
- SNKr:创造新的潮圈文化 将区块链与时尚潮流结合
- 如何往 Apple Watch 中添加音乐
- ERNIE,ERNIE2.0,Transformer-XL,XLNET
- 魔兽世界服务器同时在线人数,厉害了!《魔兽世界》怀旧服同时在线玩家已超过百万...
热门文章
- VS RTKLIB调试错误
- rtklib 后处理_RTKLIB RTKLIB是一个开放源码的程序包 联合开发网 - pudn.com
- Allegro Design Entry HDL(OrCAD Capture HDL)Library Explorer工具介绍
- 完美洗牌问题——核心思想与代码
- jQuery实现动态瀑布流布局效果
- 小议CSDN周赛57期 - 凑数
- 背了 100 个面试题库,开放性问题还是不会
- 注册为Linux服务,docker部署,dockerfile,spring boot测试监控,actuator,项目远程访问,maven的scope标签
- Java:构造方法总结
- 题目 1084: 用筛法求之N内的素数