`

j2me双缓冲经典分析

    博客分类:
  • J2ME
阅读更多
  在学习j2me的过程中,可能很多学员对屏幕缓冲理解方面有很多的误解,其实,屏幕缓冲简单的可以说成:就是使用自己创建的屏幕画笔在创建画笔的屏幕上作画,然后再将画出的屏幕做为Image的对象画到改屏幕上,这样就解决了屏幕闪烁的问题:

现将屏幕缓冲的代码贴上以供大家理解:




package com.redarmy.tes;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

public class ExCanvas extends Canvas{
	public Image offScreen;//离屏缓冲区
	public Graphics offg;  //离屏画笔
	
	public ExCanvas() {
		//绘制和屏幕一样大小的缓冲区
		offScreen = Image.createImage(this.getWidth(), this.getHeight());
		//得到离屏缓冲区的画笔
		offg = offScreen.getGraphics();		
	}

	protected void paint(Graphics arg0) {
		//绘制离屏缓冲区
		arg0.drawImage(offScreen, 0, 0, Graphics.LEFT|Graphics.TOP);
	}

}
//以上内容均有本人亲自撰写,不要随意转载。如有问题请发送邮件到;RedArmy.Chen@gmail.com
分享到:
评论

相关推荐

    动画线程双缓冲(j2me)

    总结来说,"动画线程双缓冲"是J2ME开发中提高图形性能的重要手段,结合多线程编程和双缓冲技术,能够实现高效且平滑的动画,为用户带来更好的交互体验。通过对提供的源程序进行深入研究,开发者可以进一步提升自己的...

    关于j2me game双缓冲实现探讨

    【J2ME游戏双缓冲实现】在开发J2ME游戏时,为了提高游戏画面的流畅性和避免屏幕闪烁问题,通常会采用双缓冲技术。在Midp1.0的API中,虽然没有直接提供game包,但我们可以利用Canvas类来实现这一机制。 双缓冲的核心...

    J2ME实现双缓冲解决屏幕闪烁代码!!!!

    本文将详细解释双缓冲的概念、工作原理,并提供一个简单的J2ME实现双缓冲解决屏幕闪烁的代码示例。 双缓冲是一种图形绘制优化技术,主要目的是减少屏幕闪烁和图像撕裂。在单缓冲系统中,每次图形绘制完成后立即显示...

    双缓冲技术原理以及优缺点

    ### 双缓冲技术原理以及优缺点 #### 一、双缓冲技术原理 双缓冲技术是一种在计算机图形学中广泛使用的渲染方法,它通过在后台(非显示)内存中完成图像的绘制工作,然后一次性将完整的图像复制到前台显示区域,...

    j2me版本的深水炸弹

    游戏的核心组成部分包括游戏精灵(Game Sprites)、双缓冲技术、线程管理和碰撞检测。这些元素是构建任何2D游戏的基本要素,让我们一一深入探讨。 1. 游戏精灵(Game Sprites): 游戏精灵是2D游戏中可移动或动画...

    J2ME游戏程序开发实例详解.pdf

    GameCanvas提供了双缓冲机制,防止游戏画面闪烁。 7. 声音支持: 虽然J2ME平台对声音的支持比较有限,但开发者可以使用javax.microedition.media包来控制声音播放。这包括音效和背景音乐的加载和播放。 8. 游戏...

    j2me for development

    为了提高性能,可以使用双缓冲技术来减少闪烁现象。同时,动画效果也是吸引玩家注意力的关键因素之一。 ##### 2.4 用户交互设计 在设计用户界面时,应考虑到移动设备的操作特点。例如,触摸屏、物理键盘等不同类型...

    J2ME游戏开发技巧

    #### 双缓冲技术在J2ME游戏开发中的应用 在J2ME(Java 2 Micro Edition)游戏开发中,双缓冲技术是至关重要的,尤其是在处理屏幕刷新和动画效果时。传统的单缓冲技术在更新画面时可能会导致屏幕闪烁,这是因为画面...

    J2ME中文API帮助文档

    7. `isDoubleBuffered()`:检查设备是否支持双缓冲,以减少闪烁。 8. `keyPressed()`, `keyReleased()`, `keyRepeated()`:分别用于处理按键按下、释放和重复事件。 9. `paint(Graphics g)`:重绘Canvas,这是自定义...

    J2ME手机游戏贪吃蛇的简单代码

    5. **优化**:为了提高性能,可能需要使用缓冲画布或者双缓冲技术,以避免频繁的屏幕重绘。 **文件结构** 在提供的压缩包"tanchishe"中,可能包含以下文件: - `SnakeApplet.java`: 主程序,实现了MIDlet接口,是...

    J2ME吞食鱼小游戏

    同时,为了优化性能,开发者可能会使用双缓冲技术,即先在后台缓冲区绘制完整画面,再一次性将其显示到屏幕上,以减少闪烁和撕裂现象,提高游戏流畅度。 "解决闪屏问题"则涉及到屏幕过渡和渲染优化。在J2ME游戏开发...

    J2ME笔试 java

    这篇内容涉及的是J2ME(Java 2 Micro Edition)相关的笔试题目,包括J2ME的运行机制、双缓冲技术、音乐播放、内存管理、J2ME在Java体系中的位置、与其他语言的对比以及算法和数据结构等知识点。 1. **J2ME MIDlet...

    J2ME卡马克算法源码

    帧缓冲用于临时存储每一帧的渲染结果,而双缓冲则通过在后台绘制下一帧的同时在前台显示当前帧,确保画面平滑过渡。 3. **光照与深度测试** 在有限的硬件资源下,源码可能采用简化版的光照模型和深度测试。虽然...

    j2me paint()优化

    本文将详细探讨在J2ME平台上对`paint()`方法进行优化的方法,包括减少资源加载、合理使用图像格式、避免不必要的重绘以及双缓冲技术的应用等方面。 #### 减少资源加载 资源加载往往是耗时的操作之一,尤其是在移动...

    j2me_baiyechuang.rar

    6. **缓冲区策略**:为了提高性能,可以使用双缓冲技术。在后台缓冲区绘制动画的下一帧,然后一次性将整个缓冲区复制到前台,减少闪烁。 7. **事件处理**:在J2ME应用中,`Command`和`CommandListener`接口用于处理...

    基于J2ME的手机游戏2D动画的实现

    在J2ME环境下,实现2D动画的关键技术包括双缓冲机制和图像绘制技巧。 #### 双缓冲机制 双缓冲是一种常用的动画绘制技术,用于减少屏幕闪烁现象。在双缓冲机制中,有两个独立的缓冲区:一个是正在显示的图像(前台...

    使用J2ME开发的简单图形动画

    通过学习和分析这些源码,开发者可以了解到如何在有限的资源下使用J2ME实现流畅的图形动画,同时掌握双缓冲技术以及如何处理多个图形对象的动态行为。这对于想要进入移动设备开发或者对嵌入式系统图形界面感兴趣的...

    基于j2me的手机游戏程序的几个实现技巧

    - **双缓冲技术**:为了避免屏幕闪烁问题,可以在内存中开辟一片区域作为后台画面,并在此进行图像更新和修改。完成后,再将这部分内容显示出来。这种方法可以确保显示的图像始终是完整绘制好的图像,从而提高游戏的...

Global site tag (gtag.js) - Google Analytics