0

の線に沿って何かを達成するための良い方法についての考え

var request:URLRequest = new URLRequest("http://myurl.com");
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, function(event:Event):void {
 System.setClipboard(loader.data);
});

アクションスクリプト3で?

System.setClipboard() がイベント ハンドラー内で使用できないようです (これは、Flash セキュリティについて知っていることを考えると、少なくともある程度は理にかなっています)。

次の方法はありますか?

  • それを動作させる?
  • または、メイン イベント フローで setClipboard() を呼び出すことができるように、URL の読み込みをブロックしますか?
4

2 に答える 2

2

唯一の解決策は、何らかのアラート (または他の UI) をユーザーに表示し、クリックを待つことです。

function completeHandler(event:Event):void
{
    Alert.show("Click OK to copy text to clipboard", "Alert",
        Alert.OK | Alert.CANCEL, this,
        callback, null, Alert.OK);
}

function callback(event:CloseEvent):void 
{
    // Check to see if the OK button was pressed.
    if (event.detail == Alert.OK)
        System.setClipboard(loader.data);
}
于 2010-08-06T20:46:27.633 に答える