仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 705|回复: 13
打印 上一主题 下一主题

[学习教程] JAVA网站制作之J2ME中利用缓存将屏幕内容存储为Image

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:15:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
为什么外国人还要写那些框架进行代码封装,他们不就是为了别人使用时可以更简单么!如果要达到一个企业级项目的不用框架是很难的。小一些的项目还行,大的光是MVC模式的设计的编码量就够大的了。还有性能方面,单轮windows,这个工具是微软写的,。缓存  本文先容怎样将手机屏幕的内容存储为Image对象,这里以为手机屏幕上显现的是一个Canvas。完成这一个功效的头脑就是利用缓冲机制。我们不克不及间接取得Canvas上的像素,因而不克不及间接从Canvas上的内容取得Image对象。转换一下思绪,假如把要绘制的Canvas上的内容起首绘制到一个Image上,而这个Image其实不显现到屏幕上,只是在绘画完成后一次性的显现到屏幕上。有履历的伴侣必定遐想到了双缓冲机制,不外这里并非要利用双缓冲办理闪屏的成绩,而是要失掉以后Canvas的内容。

  上面我们编写一个复杂的Canvas类来测试一下这个设法,SimpleCanvas是Canvas的子类,为了保留Canvas的内容,我们创立一个Image,巨细与Canvas的尺寸相称。

classSimpleCanvasextendsCanvas{

 intw;
 inth;
 privateImageoffImage=null;
 privatebooleanbuffered=true;
 publicSimpleCanvas(boolean_buffered){
  buffered=_buffered;
  w=getWidth();
  h=getHeight();
  if(buffered)
  offImage=Image.createImage(w,h);
 }
 protectedvoidpaint(Graphicsg){

  intcolor=g.getColor();
  g.setColor(0xFFFFFF);
  g.fillRect(0,0,w,h);
  g.setColor(color);

  GraphiCSSave=g;
  if(offImage!=null)
   g=offImage.getGraphics();
   //drawtheoffimage
   g.setColor(128,128,0);
   g.fillRoundRect((w-100)/2,(h-60)/2,100,60,5,3);
   //drawtheoffimagetothecanvas
   save.drawImage(offImage,0,0,Graphics.TOP|Graphics.LEFT);
 }

 publicImageprintMe(){
  returnoffImage;
 }

  能够看到paint()办法,并非间接对Canvas操纵,而是先把要画的内容绘制到一个Image上,然后再绘制到Canvas上。如许到你想抓取屏幕内容的时分就能够挪用printMe()办法了,前往offImage。编写一个MIDlet测试一下这个效果。

packagecom.j2medev;

importjavax.microedition.midlet.*;
importjavax.microedition.lcdui.*;

/**
*
*@authormingjava
*@version
*/
publicclassPrintScreenextendsMIDletimplementsCommandListener{

 privateDisplaydisplay=null;
 privateSimpleCanvascanvas=newSimpleCanvas(true);
 privateCommandprintCommand=newCommand("Print",Command.OK,1);

 publicvoidstartApp(){
  if(display==null)
   display=Display.getDisplay(this);
  canvas.addCommand(printCommand);
  canvas.setCommandListener(this);
  display.setCurrent(canvas);
 }

 publicvoidpauseApp(){}

 publicvoiddestroyApp(booleanunconditional){}

 publicvoidcommandAction(Commandcommand,Displayabledisplayable){
  if(command==printCommand){
   Formform=newForm("screen");
   form.append(canvas.printMe());
   display.setCurrent(form);
  }
 }
}
  运转PrintScreen,选择Print,便可把以后的屏幕显现到一个Form中。以下图所示:



C#是不行的,比如说美国的航天飞船里就有java开发的程序以上是我的愚见,其实不管那种语言,你学好了,都能找到好的工作,
海妖 该用户已被删除
沙发
发表于 2015-1-20 18:33:53 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
谁可相欹 该用户已被删除
板凳
发表于 2015-1-21 07:46:17 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
地板
发表于 2015-1-21 20:00:44 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
再现理想 该用户已被删除
5#
发表于 2015-1-25 08:49:13 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
小女巫 该用户已被删除
6#
发表于 2015-1-31 15:42:54 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
透明 该用户已被删除
7#
发表于 2015-2-2 07:25:44 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
柔情似水 该用户已被删除
8#
发表于 2015-2-2 20:10:29 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
不帅 该用户已被删除
9#
发表于 2015-2-6 15:55:05 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
第二个灵魂 该用户已被删除
10#
发表于 2015-2-6 16:50:57 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
山那边是海 该用户已被删除
11#
发表于 2015-2-17 09:47:15 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
飘灵儿 该用户已被删除
12#
发表于 2015-3-10 23:54:49 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
若相依 该用户已被删除
13#
发表于 2015-3-17 16:10:34 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
老尸 该用户已被删除
14#
发表于 2015-3-24 11:32:37 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 00:57

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表