使用AS3的復制與粘貼功能


靜態Clipboard.generalClipboard屬性表示操作系統剪貼板。Clipboard類為從Clipboard 對象讀取數據或向其中寫入數據提供了方法。也可以創建新的Clipboard對象以通過拖放API 傳輸數據。

HTML環境提供了用於復制和粘貼的備用API。可通過在應用程序安全沙箱中運行的代碼中使用上述各API,但只有HTML API可在非應用程序內容中使用(參閱HTML復制和粘貼)。

HTMLLoader和TextField類用於實現一般復制和粘貼快捷鍵的默認行為。若要實現自定義組件的復制和粘貼快捷鍵行為,你可以直接偵聽這些鍵擊,也可以使用本機菜單命令及等效鍵來間接地響應鍵擊。

可以在一個Clipboard對象中包含同一信息的不同表示形式,以使其他應用程序更易於理解和使用其中的數據。例如,圖像可以以圖像數據形式、序列化的Bitmap對象形式和文件形式包含在其中。以某種格式呈現數據的操作可以延遲,以便直到讀取此格式的數據時才真正創建此格式。

若要讀取操作系統剪貼板,請調用Clipboard.generalClipbooard對象的getData()方法,並傳遞要讀取的格式的名稱:

  1. import flash.desktop.Clipboard;  
  2. import flash.desktop.ClipboardFormats;  
  3.  
  4. if(Clipboard.generalClipboard.hasFormat(ClipboardFormats.TEXT_FORMAT)){  
  5.     var text:String =  
  6. Clipboard.generalClipboard.getData(ClipboardFormats.TEXT_FORMAT);  

若要寫入剪貼板,請以一種或多種格式將數據添加到Clipboard.generalClipboard對象。任何同一格式的現有數據都將被自動覆蓋。然而,建議在將新數據寫入系統剪貼板之前清除系統剪貼板,這樣可確保任何其他格式的無關數據也將刪除。

    1. import flash.desktop.Clipboard;  
    2. import flash.desktop.ClipboardFormats;  
    3. var textToCopy:String = "Copy to clipboard.";  
    4. Clipboard.generalClipboard.clear();  
    5. Clipboard.generalClipboard.setData(ClipboardFormats.
      TEXT_FORMAT, textToCopy, false);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM