zoukankan      html  css  js  c++  java
  • AIR中的文件系统控件

     写AIR的过程中,可能会用到文件系统的相关控件。比如选择某一目录,浏览文件列表等。

    AIR中有三种比较常用的列表类组件 --- List、Tree、DataGrid,它们的效果分别如下图所示:

    image

    分别对应:FileSystemList、FileSystemTree、FileSystemDataGrid

       1: <?xml version="1.0" encoding="utf-8"?>
       2: <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"
       3:                         title="....x"
       4:                         windowComplete="inited()">
       5:     
       6:     <mx:Script>
       7:         <![CDATA[
       8:             import mx.events.FileEvent;
       9:             
      10:             private function inited():void
      11:             {
      12:                 fileCB.directory = File.documentsDirectory;
      13:             }
      14:             
      15:             private function changeHandler(evt:FileEvent):void
      16:             {
      17:                 trace(evt.file.nativePath);
      18:             }
      19:             
      20:         ]]>
      21:     </mx:Script>
      22:     
      23:     <mx:HBox width="100%">
      24:         
      25:         <mx:FileSystemComboBox id="fileCB" directory="{fileList.directory}" directoryChange="changeHandler(event)" />
      26:         
      27:         <mx:FileSystemList id="fileList" directory="{fileCB.directory}" />
      28:         
      29:     </mx:HBox>
      30:     
      31:     <mx:HBox width="100%" height="100%">
      32:         
      33:         <mx:FileSystemTree id="fileTree" width="300" height="400" directory="{FileSystemTree.COMPUTER}" />
      34:         
      35:         <mx:FileSystemDataGrid id="fileGrid" width="100%" height="100%" directory="{File.desktopDirectory}" />
      36:         
      37:     </mx:HBox>
      38:     
      39:     
      40:     
      41: </mx:WindowedApplication>

    还有一个对文件操作的常用操作:

    1)、浏览文件,打开一个对话框,选择一个或多个文件;

    image

       1: private var file:File = new File();
       2: private var fileFilter:FileFilter = new FileFilter("Text", "*.txt; *.html; *.xml");
       3: private var imgFilter:FileFilter = new FileFilter("图片", "*.jpg; *.png; *.jpeg");
       4:  
       5: private function inited():void
       6: {
       7:       file.addEventListener(Event.SELECT, onSelectHandler);
       8:     file.addEventListener(Event.CANCEL, onCancelHandler);
       9:     file.addEventListener(FileListEvent.SELECT_MULTIPLE, onSelectMultipleHandler);
      10:     
      11:       file.browseForOpen("Open File", [fileFilter, imgFilter]);    
      12:     file.browseForOpenMultiple("Open File", [fileFilter, imgFilter]);    
      13: }
      14:  
      15: private function onSelectHandler(evt:Event):void
      16: {
      17:     
      18: }
      19:  
      20: private function onCancelHandler(evt:Event):void
      21: {
      22:     
      23: }
      24:  
      25: private function onSelectMultipleHandler(evt:FileEvent):void
      26: {
      27:     
      28: }

    2)、保存文件

    image

    image 

       1: private function inited():void
       2: {
       3:     file = File.desktopDirectory;
       4:     file.browseForSave("另存为");
       5:     
       6:     file.addEventListener(Event.SELECT, onSelectHandler);
       7: }
       8:  
       9: private function onSelectHandler(evt:Event):void
      10: {
      11:     var file:File = evt.target as File;
      12:     var stream:FileStream = new FileStream();
      13:     
      14:     stream.open(file, FileMode.WRITE);
      15:     stream.writeUTFBytes("Hello AIR");
      16:     stream.close();
      17: }

    3)、其它应用程序的技巧,例如:让应用程序始终“保持在其它窗口的顶部”(alwaysInFront=true)、应用程序在任务栏中,它的右击菜单、顶部的状态栏操作等

  • 相关阅读:
    ArrayList,HashSet以及HashMap(2019年10月23日)
    (面试题)String,Random,Math 等一些Object对象(2019年10月22日)
    南开大学2014年硕士研究生入学考试高代试题(回忆版)
    南开大学2014年高等代数部分试题解答
    搜集到的数学分析例题(不断更新)
    武汉大学2012年数学分析试题解答
    分析力学复习笔记(更新中)
    电子结构引论读书笔记:第三章-Hartree-Fock近似
    电子结构引论读书笔记:第二章-多电子波函数和算符
    DNA电荷转移:电阻的计算公式 & Marcus电子转移理论
  • 原文地址:https://www.cnblogs.com/meteoric_cry/p/2433982.html
Copyright © 2011-2022 走看看