类别 AIR 订阅所有【AIR】的日志

改进AIR网页浏览器:支持加载本地内容

使用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属性返回所选本地文件的路径。

点击此处下载该实例的源码。

上一篇上一篇: 在AS中运用递归
下一篇下一篇: 使用arguments对象实现递归
来自文章来自: 本站原创
引用引用通告: 查看所有引用 | 我要引用此文章
标签Tags: Apollo FlashCS3
相关相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭