鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 手机系统开发 > J2ME > >

J2ME中使用缓存将屏幕内容存储为图片格式

来源:互联网 作者:佚名 时间:2015-08-02 08:03
欢迎进入IT技术社区论坛,与200万技术人员互动交流 >>进入 可以看到paint()方法,并不是直接对Canvas操作,而是先把要画的内容绘制到一个Image上,然后再绘制到Canvas上。这样到你想抓取屏幕内容的时候就可以调用printMe()方法了,返回offImage。编写一个MID
欢迎进入IT技术社区论坛,与200万技术人员互动交流 >>进入

 可以看到paint()方法,并不是直接对Canvas操作,而是先把要画的内容绘制到一个Image上,然后再绘制到Canvas上。这样到你想抓取屏幕内容的时候就可以调用printMe()方法了,返回offImage。编写一个MIDlet测试一下这个效果。

以下是引用片段:
package com.J2MEdev;
import Javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
/**
*
* @author mingjava
* @version
*/
public class PrintScreen extends MIDlet implements CommandListener{
 private Display display = null;
 private SimpleCanvas canvas = new SimpleCanvas(true);
 private Command printCommand = new Command("Print",Command.OK,1);
 public void startApp() {
  if(display == null)
   display = Display.getDisplay(this);
  canvas.addCommand(printCommand);
  canvas.setCommandListener(this);
  display.setCurrent(canvas);
 }
 public void pauseApp() {}
 public void destroyApp(boolean unconditional) {}
 public void commandAction(Command command, Displayable displayable) {
  if(command == printCommand){
   Form form = new Form("screen");
   form.append(canvas.printMe());
   display.setCurrent(form);
  }
 }
}

  运行PrintScreen,选择Print,即可把当前的屏幕显示到一个Form中。如下图所示:

  [1] [2] 

网友评论
<