剪貼板是一個軟件設(shè)備,它用來暫時存貯數(shù)據(jù),以及通過復(fù)制粘貼實(shí)現(xiàn)數(shù)據(jù)在文檔之間的移動。 這個快速教程,我們將用Flash制作一個復(fù)制鍵。
下面的例子將是我們在這個教程中將要制作的。 按ctrl+v可將文檔內(nèi)容復(fù)制到任何地方。
我們將在舞臺上放置兩個文本區(qū)域,一個輸入?yún)^(qū)和一個動態(tài)顯示區(qū)。按鈕將獲取輸入?yún)^(qū)的文字并將其復(fù)制到剪貼板上,此時動態(tài)顯示區(qū)將會顯示相應(yīng)的信息。
現(xiàn)在,我們會處理在Flash播放器插件中的剪貼板,如此以來我們將無法使用AIR專用的flash.desktop.Clipboard 類 。
打開Flash并創(chuàng)建一個新的Flash文檔(ActionScript 3.0)。
將舞臺大小設(shè)為 320 x 240px.
每個具有交互性的對象(即用戶可以作用的對象)可調(diào)度復(fù)制粘貼事件。如果對象當(dāng)前是一個文本區(qū)域,那么此事件默認(rèn)的操作是將當(dāng)前文本區(qū)域選中的所有文本復(fù)制到剪貼板上。你可以監(jiān)聽這些事件的使用:
1. myObject.addEventListener(Event.COPY, onCopy);
2. myObject.addEventListener(Event.CUT, onCut);
3. myObject.addEventListener(Event.PASTE, onPaste);
這個教程我們將主要應(yīng)用System.setClipboard()方法。
選擇文本工具(T)并創(chuàng)建兩個文本區(qū)域,一個動態(tài)顯示區(qū)和一個輸入?yún)^(qū)。 可以在輸入?yún)^(qū)內(nèi)鍵入些文字以供復(fù)制,像如郵箱地址。
打開屬性面板,按下面所示設(shè)置兩個區(qū)域的實(shí)例名稱。
這個按鈕將執(zhí)行將文本復(fù)制到剪貼板。 選擇矩形工具(R)創(chuàng)建一個60×28 px 的矩形,并設(shè)其填充色為 #333333.。并在其上添加一個作為標(biāo)簽的靜態(tài)文本。
將這個圖形轉(zhuǎn)化為影片剪輯(選中它們,點(diǎn)擊修改>轉(zhuǎn)化為元件),并將其命名為復(fù)制鍵。
按F9或執(zhí)行窗口>動作,打開動作面板。
此函數(shù)可以將文本復(fù)制到剪貼板上。
function copyText(e:MouseEvent):void { System.setClipboard(myField.text); // messageField.text = "Copied!";//messageField區(qū)將會出現(xiàn)一條反饋信息。 } |
復(fù)制函數(shù)將由這個鼠標(biāo)事件執(zhí)行。
我們將在按鈕上添加一個事件監(jiān)聽器,這樣當(dāng)用戶點(diǎn)擊按鈕的時候就會調(diào)用復(fù)制文本的函數(shù)。
copyButton.addEventListener(MouseEvent.MOUSE_UP, copyText); |
保存并按Cmd+Return測試動畫。 按ctrl+v可將文檔內(nèi)容復(fù)制到任何地方。
這是一個比較基礎(chǔ)的例子,將它應(yīng)用到你的作品中去吧。 謝謝閱讀 !