Applet无法从Graphics对象绘制 [英] Applet not drawing from Graphics object
本文介绍了Applet无法从Graphics对象绘制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
嗨
我的Applet查看器/Applet/画布有一些问题:
当我使用它时,Applet查看器是我想要的大小,但是Applet本身是1x2(Pixels)
我正在使用Eclipse
资料来源:
Hi
I have some problems with my Applet viewer/Applet/Canvas:
When i use it, the Applet viewer is the size i want, but the applet itself is 1x2(Pixels)
I am using Eclipse
Source:
package net.petterroea;
import java.applet.Applet;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.image.BufferedImage;
public class TheBox extends Applet implements Runnable{
Input input;
Screen screen;
boolean running;
Thread thisThread;
Image backBuffer;
public TheBox()
{
thisThread = new Thread(this);
input = new Input(this);
this.setPreferredSize(new Dimension(640, 480));
this.addKeyListener(input);
this.addFocusListener(input);
this.addMouseListener(input);
Media.loadImages();
screen = new MainMenuScreen();
}
@Override
public void start()
{
running = true;
thisThread.run();
}
@Override
public void stop()
{
running = false;
}
@Override
public void run()
{
Graphics realg;
Graphics g;
while(running)
{
synchronized(this)
{
System.out.println(this.getWidth() + " " + this.getHeight());
realg = this.getGraphics();
if(backBuffer == null)
{
backBuffer = createImage(this.getWidth(), this.getHeight());
}
else if(backBuffer.getWidth(null) != this.getWidth() || backBuffer.getHeight(null) != this.getHeight())
{
backBuffer = createImage(this.getWidth(), this.getHeight());
}
g = backBuffer.getGraphics();
screen.tick(g);
realg.drawImage(backBuffer, 0, 0, null);
try {
Thread.sleep(50);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
推荐答案
简单答案:您的代码是错误的.
复杂的答案:我们无法猜测代码的任何内容,除非看到错误的出处,并通过解释所需的代码来解决.
Simple answer: Your code is wrong.
Complex answer: We cannot guess anything about your code without seeing where it is going wrong, and by you explaining what you expect it to do.
这篇关于Applet无法从Graphics对象绘制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文