我正在尝试创建一个简单游戏的开始。我要做的第一件事是将图形导入到我的代码中,然后在屏幕上移动它。我能够在屏幕上画一个球并四处移动,但是当我从文件导入图形时,无法四处移动。我想念什么或做错什么?

import javax.swing.*;

import java.awt.Graphics;

import java.awt.*;

import java.awt.event.*;

import javax.swing.ImageIcon;

import java.awt.Color;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.KeyListener;

import javax.swing.JPanel;

import javax.swing.Timer;

public class Game extends JPanel implements ActionListener, KeyListener {

Timer t = new Timer(5, this);

double x = 0, y = 0, velX = 0, velY = 0;

private ImageIcon image;

public Game(){

setBackground(Color.WHITE);

t.start();

addKeyListener(this);

this.setFocusable(true);

setFocusTraversalKeysEnabled(false);

image = new ImageIcon ("ship.gif");

}

public void paintComponent(Graphics g){

super.paintComponent(g);

ImageIcon i = new ImageIcon("C:\\Users\\Bryan\\Pictures\\ship.gif");

i.paintIcon(this, g, 0, 0);

}

public void actionPerformed(ActionEvent e){

repaint();

x += velX;

y += velY;

if(x<0){

velX = 0;

x = 0;

}

if(x>750){

velX = 0;

x = 750;

}

if(y<0);{

velY = 0;

y = 0;

}

if(y>550){

velY = 0;

y = 550;

}

}

public void up(){

velY = -1.5;

velX = 0;

}

public void down(){

velY = 1.5;

velX = 0;

}

public void left(){

velX = -1.5;

velY = 0;

}

public void right(){

velX = 1.5;

velY = 0;

}

public void keyPressed(KeyEvent e){

int code = e.getKeyCode();

if (code == KeyEvent.VK_UP){

up();

}

if (code == KeyEvent.VK_DOWN){

down();

}

if (code == KeyEvent.VK_LEFT){

left();

}

if (code == KeyEvent.VK_RIGHT){

right();

}

}

public void keyTyped(KeyEvent e){}

public void keyReleased(KeyEvent e){

// velX = 0;

// velY = 0;

int code = e.getKeyCode();

if (code == KeyEvent.VK_UP){

velY = 0;

}

if (code == KeyEvent.VK_DOWN){

velY = 0;

}

if (code == KeyEvent.VK_LEFT){

velX = 0;

}

if (code == KeyEvent.VK_RIGHT){

velX = 0;

}

}

}

我的司机是在另一个班级,如下所示:

import java.awt.Color;

import javax.swing.JFrame;

public class GameDriver {

public static void main(String[] args) {

JFrame f = new JFrame();

Game g = new Game();

f.add(g);

f.setVisible(true);

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setSize(800,600);

}

}

matlab建模怎么移动箭头,如何使用箭头键在屏幕上移动图形?相关推荐

  1. win7 开始 计算机箭头,win7系统开机黑屏屏幕上一个箭头的解决办法

    大伙儿有木有碰到过那样的状况:win7系统软件启动后,沒有登陆到一切正常的页面,只是死机了,随后全部显示屏只能1个鼠标箭头.电脑上新手们毫无疑问会感觉无计可施,没事儿,雨林木风小编又来协助大伙儿解决困 ...

  2. matlab 点云法向量计算和用箭头显示

    matlab 点云法向量计算和用箭头显示 点云法向量估计的方法有很多,应用最广泛和普遍的是,基于平面拟合的法向量计算,也就是基于PCA的法向量计算.当计算某个点的法向量时,首先,找到最近的K个点,然后 ...

  3. R语言ggplot2可视化在图形中添加箭头:直线箭头、弧形箭头

    R语言ggplot2可视化在图形中添加箭头:直线箭头.弧形箭头 目录 R语言ggplot2可视化在图形中添加箭头:直线箭头.弧形箭头

  4. matlab的实用与仿真,MATLAB建模与仿真实用教程

    前言 第1章MATLAB建模基础 1.1 MATLAB简介 1.1.1 MATLAB的安装 1.1.2 MATLAB通用命令 1.1.3 MATLAB应用窗口简介 1.2 MATLAB数学建模概述 1 ...

  5. matlabpython建模_一直在用Matlab建模,现在Python很火,用学么?

    原标题:一直在用Matlab建模,现在Python很火,用学么? 有朋友问,自己是非IT技术岗,仅仅是做一些建模工作,现在在工作中一直使用Matlab,对它比较熟悉,各种函数都掌握,而前些年一直在用C ...

  6. matlab电压稳定极限,电力系统电压稳定性的Matlab建模分析

    Matlab软件作为一个编程效率高.程序设计灵活.图形功能强的工程实用的分析软件,在电力系统的仿真分析及相关计算中得以广泛应用,特别是其中的Simulink工具箱可以实现电力系统的模型建立及动态仿真[ ...

  7. bms用matlab吗,一种BMS的MATLAB建模集成方法与流程

    技术特征: 1.一种BMS的MATLAB建模集成方法,其特征在于,包括以下步骤: S01:将BMS分为输入模块.输出模块及若干个中间模块,并定义各模块的名称: S02:定义各模块的输入端口和输出端口的 ...

  8. matlab电机建模,Matlab系列之无刷电机matlab建模.ppt

    永磁无刷电机(BLDC)的数学模型 由于定子三相绕组为星形连接,且无中线,则有: 无刷电机本体模块 无刷直流电机定子电压平衡方程 无刷电机本体模块 无刷电机本体模块 无刷电机本体模块 无刷电机本体模块 ...

  9. 程序阅读_全面详解LTE:MATLAB建模仿真与实现_自学笔记(1)调制与编码_程序阅读

    程序阅读_全面详解LTE:MATLAB建模仿真与实现_自学笔记(1)调制与编码_程序阅读 在粗浅地掌握了LTE知识后,从今天开始对<全面详解LTE:MATLAB建模仿真与实现>一书的学习. ...

最新文章

  1. 带你用4行代码训练RNN生成文本(附资源)
  2. android WebSocket 发送图片
  3. TI的TCP/IP协议栈---NDK
  4. Flink + Iceberg + 对象存储,构建数据湖方案
  5. Sentinel(二十六)之Sentinel Dashboard中修改规则同步到Nacos
  6. Linux下使用od查看文件
  7. Emlog博客MetBlogm主题-博客开源主题源码
  8. 全新UI四方聚合支付系统源码/新增USDT提现/最新更新安全升级修复XSS漏洞补单漏洞
  9. mysql返回上一层_mysql常用命令大全
  10. 计算机算法专业英语,计算机算法英语常用术语
  11. pdf照片显示正常打印时被翻转_2020年二级建造师执业资格考试打印准考证的10点注意事项!...
  12. 置信区间、置信水平、边际误差
  13. UVA 10041-Vito's Family
  14. 深度解析BAT三家互联网公司,为什么腾讯产品第一,百度技术第一,阿里运营第一?
  15. 好莱坞大片! 为躲避死亡威胁, 只用15步, 这个密码朋克大叔就从世界消失了......
  16. 可道云需要配置MySQL吗_可道云kodexplorer搭建私有云后的配置优化
  17. 是不是程序员总会遇到一个瓶颈期,觉得自己没有进步了,该怎么解决?
  18. bzoj3659 Which Dreamed It BEST定理(公式绝对没错doge)
  19. 与计算机有关的技能,计算机类
  20. 高斯约当法求逆矩阵的算法实现(C++)

热门文章

  1. 转载关河兄的一篇文章《探索性测试(Exploratory Testing)概述》
  2. 【SpringBoot框架篇】11.Spring Data Jpa实战
  3. 如何用u盘安装深度linux系统,如何安装Deepin国产操作系统?只需一个U盘就够了,超简单...
  4. 堡垒机复制粘贴不了的问题
  5. (6)继承与面向对象设计- Effective C++改善程序与设计的55个具体做法(Effective C++: 55 Specific Ways to Improve Your Programs)
  6. ubuntu查看网速的工具
  7. Qt 正则表达式的使用
  8. thinkpad卡在logo界面_联想笔记本开不了机卡住logo界面如何解决
  9. Oracle NOWAIT关键字的理解
  10. win32 c语言创建线程,【原创】win32线程及线程内核对象