站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
▼
建站程序
开发
服务器
办公软件
开发教程
▼
服务器教程
软件使用教程
运营教程
热门电子书
▼
CSS教程
WordPress教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
热点词条
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
Applet装载图像
”(章节)
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
==双缓冲图像== 为了提高图像的显示效果应采用双缓冲技术。首先把图像装入内存,然后再显示在Applet窗口中。 使用双缓冲图像技术例子(BackgroundImage.java) <pre>//源程序清单 import java.awt.*; import java. applet.*; public class BackgroundImage extends Applet //继承Applet { Image picture; Boolean ImageLoaded=false; public void init() { picture=getImage(getCodeBase(),"Image.gif"); //装载图像 Image offScreenImage=createImage(size().width,size().height); //用方法createImage创建Image对象 Graphics offScreenGC=offScreenImage.getGraphics(); //获取Graphics对象 offScreenGC.drawImage(picture,0,0,this); //显示非屏幕图像 } public void paint(Graphics g) { if(ImageLoaded) { g.drawImage(picture,0,0,null); //显示图像,第四参数为null,不是this showStatus("Done"); } else showStatus("Loading image"); } public boolean imageUpdate(Image img,int infoflags,int x,int y,int w,int h) { if(infoflags= =ALLBITS) { imageLoaded=true; repaint(); return false; } else reture true; } }</pre> 分析该Applet的init方法可知,该方法首先定义了一个名为offScreenImage的Image对象并赋予其createImage方法的返回值,然后创建了一个名为offScreenGC的Graphics对象并赋予其图形环境——非屏幕图像将由它来产生。因为这里画的是非屏幕图像,所以 Applet窗口不会有图像显示。 每当Applet调用drawImage方法时,drawImage将创建一个调用 imageUpdate方法的线程。Applet可以在imageUpdate方法里测定图像已有装入内存多少。drawImage创建的线程不断调用 imageUpdate方法,直到该方法返回false为止。 imageUpdate方法的第二个参数infoflags使 Applet能够知道图像装入内存的情况。该参数等于ImageLoaded设置为true并调用repaint方法重画Applet窗口。该方法最终返回false,防止drawImage的执行线程再次调用imageUpdate方法。 该Applet在paint方法里的操作是由 ImageLoaded变量控制的。当该变量变为true时,paint方法便调用drawImage方法显示出图像。paint方法调用 drawImage方法时把null作为第四参数,这样可防止drawImage调用imageUpdate方法。因为这时图像已装入内存,所以图像在 Applet窗口的显示可一气呵成。
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)