改进AIR网页浏览器:支持加载本地内容
作者:Flying 日期:2007-09-25
使用HTMLLoader对象,不仅可以加载Html、文本、图片,还可以加载PDF内容(本机安装Adobe Reader 版本8.1或更高版本),目前我们的网页浏览器只能加载远程内容,如何加载本地内容呢?
无论是远程还是本地,都可以通过文件路径的URL来加载,而要访问本地文件或目录的路径,则要用到AIR中的File对象。还有就是我们不能加载所有类型的文件,因此加载前得使用FileFilter对象来过滤。
在Flash CS3的舞台中放置按钮openBtn,并为其注册事件侦听器,如下面的代码:
openBtn.addEventListener(MouseEvent.CLICK, clickOpenHandler);
private function clickOpenHandler( event:MouseEvent ):void {
var htmlFilter:FileFilter = new FileFilter("HTML Files","*.html;*.htm");
var txtFilter:FileFilter = new FileFilter("Text Files","*.txt;*.xml");
var imgFilter:FileFilter = new FileFilter("Image Files","*.jpg;*.gif;*.png;*bmp");
var f:File = new File();
var pdfFilter:FileFilter = new FileFilter("PDF Files","*.pdf");
f.browseForOpen( "Select a File", [htmlFilter, txtFilter, imgFilter, pdfFilter] );
f.addEventListener( Event.Select, selectHandler);
}
private function selectHandler( event:Event ):void {
var file:File = event.target as File;
htmlLoader.load( new URLRequest( file.url ));
}
在用户选择文件并关闭“打开文件”对话框时File对象分派select事件,通过File对象的url属性返回所选本地文件的路径。
点击此处下载该实例的源码。评论: 0 | 引用: 0 | 查看次数: -
发表评论


上一篇:
下一篇:
文章来自:
Tags:
相关日志: