针对java画面闪烁
如题!解决的方法是增加一个虚背景。之后把虚背景增加到原来的Frame上。由于repaint()到paint()中间涉及到update(),所以解决问题的
关键是在重写update(),在这个方法中实现虚背景的添加~~
@Override
public void update(Graphics g)
{
if(offScreenImage == null)
{
offScreenImage = this.createImage(800, 600);
}
/*
*定义在虚背景中画的“画笔”
*/
Graphics graOffScreen = offScreenImage.getGraphics();
/*
*重画虚背景
*/
Color c = graOffScreen.getColor();
graOffScreen.setColor(Color.GREEN);
graOffScreen.fillRect(150, 150, 800, 600);
graOffScreen.setColor(c);
paint(graOffScreen);
g.drawImage(offScreenImage, 0, 0, null);
}
相关文档:
Java学习从入门到精通
一、 JDK (Java Development Kit)
JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的J ......
1.线程创建的两种方式
1)扩展Thread类并重写public void run()方法
ps:
定义线程:
class myThread extends Thread(){
public void run(){
System.out.println("Ju ......
Java™ 本机接口(Java Native Interface,JNI)是一个标准的 Java API,它支持将 Java 代码与使用其他编程语言编写的代码相集成。如果您希望利用已有的代码资源,那么可以使用 JNI 作为您工具包中的关键组件 —— 比如在面向服务架构(SOA)和基于云的系统中。但是,如果在使用时未注意某些事项,则 ......
package chape8;
/**
* 第8章
* 第46條:
* for-each循環優先于for循環
* for(Element e : c)
* {
* dosomthing(e);
* }
* 这个是java1.5以上的版本的for循环的首先考虑的写法
* 以下是java1.5以前的寫法
* for (Iterator it = c.iterator();it.hasNext();)
{ ......