java repaint() 方法无法执行,不知道是哪个原因

老白小白 2021-05-08 04:22:27
直接贴代码,因为复制的不对,开头有些空格别在意 package fighting; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.JFrame; import javax.swing.JPanel; public class Game extends JFrame implements Runnable { BufferedImage mob = null; BufferedImage biu = null; static int x = 736, y = 436; static JPanel iconpanel = new JPanel(); public static void main(String[] args) { Game game = new Game(); new Game().setVisible(true); Thread t = new Thread(game); t.start(); } @Override public void run() { this.addKeyListener(new KeyListener() { @Override public void keyTyped(KeyEvent e) { Game g =new Game(); int key=e.getKeyCode(); switch(key) { case KeyEvent.VK_W: x-=1; g.repaint(); case KeyEvent.VK_S: x+=1; g.repaint(); case KeyEvent.VK_A: y-=1; g.repaint(); case KeyEvent.VK_D: y+=1; g.repaint(); } } public void keyReleased(KeyEvent e) { } public void keyPressed(KeyEvent e) { } }); } public Game() { try { biu = ImageIO.read(new File( "E:\\JAVA资源包\\Java从入门到精通(第5版)\\2. TM(实例源程序)\\TM(实例源程序)\\sl\\shenshenxiaoshe2021\\src\\fighting\\biu.png")); mob = ImageIO.read(new File( "E:\\JAVA资源包\\Java从入门到精通(第5版)\\2. TM(实例源程序)\\TM(实例源程序)\\sl\\shenshenxiaoshe2021\\src\\fighting\\monster.png")); } catch (IOException e) { e.printStackTrace(); } setTitle("打怪"); setBounds(0, 0, 800, 500); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } @Override public void paint(Graphics g) { Graphics2D g2 = (Graphics2D) g; g2.drawImage(biu, x, y, this); g2.drawImage(mob, 50, 50, this); } } 我是中小学生各位大神帮个忙感谢了
...全文
146 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
JAVA语言与面向对象程序设计单选题 applet的主要方法Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成主类实例的初始化工作。 A.A. start( ) B. B. stop( ) C. C. init( ) D. D. paint( ) 答案:C applet的主要方法 下面哪个方法与applet的显示无关? A.A、 update() B. B、draw() C. C、repaint() D. D、paint() 答案:B applet主要方法Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成一些画图操作。 A.A. start( ) B. B. stop( ) C. C. init( ) D. D. paint( ) 答案:D applet主要方法 下面哪种方法可以获得一个applet的init() 方法在网页中的宽度? A.a) int width = this.getY() 答案:B applet主要方法Java Applet程序用户自定义的Applet子类中,常常重载( ) 方法在Applet的界面中显示文字、图形和其它界面元素。 A.A. start( ) B. B. stop( ) C. C. init( ) D. D. paint( ) 答案:D applet主要方法 下面的applet的init()方法所给出的用户界面是()。    public void init() {      setLayout(new BorderLayout());      add("East", new Button("hello")); } A.a) 在applet的正中出现一个按钮 B.   b) 在applet的左边出现一个按钮 C. c) 在applet的右边出现一个按钮 D. d) 一个按钮充满了整个applet 。 答案:C final类 下面类定义中哪一个定义了一个不允许有子类的类? A.a) class Key { } B.    b) abstract final class Key { } C.    c) class Key {final D.} E.    d) final class Key { } 答案:D final修饰符 以下哪个约束符可用于定义成员常量? A.A、 static B. B、final C. C、abstract D. D、No modifier can be used 答案:B java程序基础 Java Application源程序的主类是指包含有( )方法的类。 A.A、main方法 B. B、toString方法 C. C、init方法 D. D、actionPerfromed方法 答案:A java程序结构 main方法Java Application程序执行的入口点,关于main方法方法头以下哪项是合法的( ) A.A、 public static void main() B. B、public static void main(String[ ] args) C. C、 public static int main(String[ ] arg) D.D、public void main(String arg[ ]) 答案:B java程序结构 main方法Java Application程序执行的入口点,关于main方法方法头以下哪项是合法的( ) A.A.public static void main() B. B、public static void main(String[ ] args) C. C、 public static int main(String[ ] arg) D.D、public void main(String arg[ ]) 答案:B java基础 Java Applet 源程序文件的扩展名为( )。 A.A. .java B. B. .class C. C. .html D. D. .exe 答案:A 按钮 创建一个标识有"关闭"按钮的语句是: A.A、TextField b = new TextField("关闭") 答案:D 按钮 创建一个标识有"关闭"按钮的语句是( )。 A.A. TextField b = new TextField("关闭") 答案:D 编译 编译Java Applet 源程序文件产生的字节码文件的扩展名为( )。 A.A. .java B. B. .class C. C. .html D. D. .exe 答案:B 编译 编译Java Application 源程序文件将产生相应的字节码文件,这

58,442

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧