请教:一只乌龟的运动

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会动的乌龟代码_请教:一只乌龟的运动相关推荐

  1. java如何实现乌龟爬行_请教:一只乌龟的运动

    import java.awt.*; import java.awt.event.*; import java.util.EventListener; /*打算你按上,乌龟上爬,按下,乌龟下爬.但是一 ...

  2. java关于泛型的实验代码_[ Java学习 ] 泛型类的应用实验

    成文原因: 这篇文章是我这周所做的 Java 实验题的一个小总结. 这次实验让我深刻赞同了我们 Java 老师在这节实验课前告诉我们的话: 最重要的是把问题想明白,它要怎么拆分成几个类,每个类里究竟需 ...

  3. java关于泛型的实验代码_[改善Java代码]强制声明泛型的实际类型

    Arrays工具类有一个方法asList可以把一个变长参数或数组变成列表,但是它有一个缺点:它所生成的List长度是不可改变的,而这在我们的项目开发中很不方便. importjava.util.Arr ...

  4. java中拷贝文件的代码_拷贝文件夹中的所有文件到另外一个文件夹

    [java]代码库/** * * 拷贝文件夹中的所有文件到另外一个文件夹 * * @param srcDirector * 源文件夹 * * @param desDirector * 目标文件夹 * ...

  5. java程序设计及实践实践代码_杭+新闻:姚争为老师把程序设计讲“活”了,满是代码的枯燥课程被学生“秒杀”...

    通讯员 陈鑫 杨鹏飞 记者 方秀芬 作为专业选修课,Java程序设计和Web程序设计,这两门满是代码的课程,看似很枯燥,但在杭师大信息科学与工程学院却爆红,每学期都遭"秒杀",以前 ...

  6. java当中有关循环的代码_有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下。1、循环输出1到100之间所有能被3或能被4整除的数。pack...

    有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下. 1.循环输出1到100之间所有能被3或能被4整除的数. package com.hz.loop02; /** ...

  7. java开闭原则实现代码_向对象的六大原则

    前言 我们都知道面向对象有六大原则,23种设计模式.它们可以指导我们如何写出更加优秀的代码.六大原则是基础,我们面向对象编程应该尽量遵从这六大原则,才能写出优秀的代码. 23种设计模式是前人为我们总结 ...

  8. java学生成绩降序代码_输入5名学员成绩,降序排列输出

    代码和任务 import java.util.Scanner; /*copyright(c)2015 csdn学院 *All right reserved. *文件名称:test.java *作者:张 ...

  9. java程序员的浪漫代码_专属于程序员的浪漫-Java输出动态闪图iloveyou

    代码测试可用,运行结果非常辣眼睛,有种二十一世纪初流行于广大中小学生之间的失落非主流的感觉! 还是比较有参考价值的,获取当前日期时间,日期类格式化,图形界面的开发等. java awt实现小程序动态闪 ...

最新文章

  1. 项目中用到的BAPI合集
  2. ueditor配置文件配置自动段落缩进_vimrc里各种配置的含义
  3. 《Java程序设计》第五周学习总结
  4. Linux内核3.0移植并基于Initramfs根文件系统启动
  5. pycharm连接sqlite
  6. 第四周作业 简单地邮件发送实现
  7. ip地址怎么设置才有效_如果想减肥,怎么拆解目标才是有效的?
  8. 第二届ATI获奖自动化测试工具介绍
  9. 微信小程序 服务器代理转发,微信小程序转发功能
  10. named_struct类型怎么用
  11. 【C++】关于set的一些奇怪问题:错误C2676 二进制“<”:“const _Ty”不定义该运算符或到预定义运算符可接收的类型的转换
  12. 麻雀虽小五脏俱全----ZC评价系统
  13. 腹肌锻炼视频(02):八种基本动作
  14. C++下的utility
  15. 沧小海基于xilinx srio核的学习笔记之第五章 Rapidio协议详述
  16. Pr:导出设置之编码设置
  17. SNKr:创造新的潮圈文化 将区块链与时尚潮流结合
  18. 如何往 Apple Watch 中添加音乐
  19. ERNIE,ERNIE2.0,Transformer-XL,XLNET
  20. 魔兽世界服务器同时在线人数,厉害了!《魔兽世界》怀旧服同时在线玩家已超过百万...

热门文章

  1. VS RTKLIB调试错误
  2. rtklib 后处理_RTKLIB RTKLIB是一个开放源码的程序包 联合开发网 - pudn.com
  3. Allegro Design Entry HDL(OrCAD Capture HDL)Library Explorer工具介绍
  4. 完美洗牌问题——核心思想与代码
  5. jQuery实现动态瀑布流布局效果
  6. 小议CSDN周赛57期 - 凑数
  7. 背了 100 个面试题库,开放性问题还是不会
  8. 注册为Linux服务,docker部署,dockerfile,spring boot测试监控,actuator,项目远程访问,maven的scope标签
  9. Java:构造方法总结
  10. 题目 1084: 用筛法求之N内的素数