首页 > 网站 > WEB开发 > 正文

23.11.与操作系统剪贴板交互

2024-04-27 13:52:33
字体:
来源:转载
供稿:网友
23.11.1.问题
我想与操作系统剪贴板进行数据交换。
23.11.2.解决办法
使用Clipboard类的静态generalClipboard属性。
23.11.3.讨论
除了通过拖拽操作和系统剪贴板交换数据外,还可通过flash.desktop.Clipboard类的静态属性generalClipboard与剪贴板交换数据。AIR程序支持的数据交换格式有:位图数据,标准文本数据,HTML, 和URL格式。当数据可用时,可分别被转换为BitmapData对象,File对象数组和String对象。你还可以用自定义数据与Clipboard对象进行交换,只不过这些数据只能在知道如何处理它的其他AIR程序中可用。

在下面的例子中,你可以添加,删除,访问操作系统剪贴板中的数据:
+展开
-XML
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxmllayout="vertical">
<mx:Script>
<![CDATA[
private function addHandler():void {
Clipboard.generalClipboard.setData(ClipboardFormats.TEXT_FORMAT,textField.text );
}
private function removeHandler():void {
Clipboard.generalClipboard.clear();
}
private function pasteHandler():void {
if ( Clipboard.generalClipboard.hasFormat(ClipboardFormats.TEXT_FORMAT ) ){
textField.text = Clipboard.generalClipboard.getData(ClipboardFormats.TEXT_FORMAT )as String;
}
}

]]>
</mx:Script>
<mx:TextArea id="textFieldwidth="100%height="100%" />
<mx:Button label="add to clipboardclick="addHandler();" />
<mx:Button label="remove from clipboardclick="removeHandler();" />
<mx:Button label="past from clipboardclick="pasteHandler();" />
</mx:WindowedApplication>
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表