peymannaji
جمعه 13 مرداد 1391, 23:12 عصر
با سلام . این کدی هست که با AS نوشتم . مسئله ای که وجود داره اینه که همانطور که میبینید یک دکمه دارم به نام myButton که اگه رو خودش کلیک بشه یک File Dialog باز میکنه ... حالا کاری که من میخوام انجام بدم اینه که با جاوا اسکریپت رویداد کلیک دکمه myButton رو فایر کنم که اون File Dialog باز بشه ... متد fromJS() صدا زده میشه ! اما محتوای اون myButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); اجرا نمیشه ! به هیچ خطایی هم برخورد نمیکنم حتی اگه بعد از اون یک کد ساده بنویسم بدون مشکل اجرا میشه ... مشکل از چی میتونه باشه ؟
package
{
import flash.external.*;
import flash.net.FileReferenceList;
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.system.Security;
public class MultiSelectClass extends MovieClip
{
private var fileRef:FileReferenceList;
function MultiSelectClass()
{
Security.allowDomain( "*" );
myButton.addEventListener(MouseEvent.CLICK, myButtonClick);
addCallbacks();
}
private function addCallbacks():void
{
if (ExternalInterface.available)
{
ExternalInterface.addCallback("sendToFlash", fromJS);
}
return;
}
function myButtonClick(ev:MouseEvent):void
{
fileRef = new FileReferenceList();
fileRef.browse();
}
private function fromJS():void
{
myButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
private function sendToJS():void
{
if (ExternalInterface.available)
{
ExternalInterface.call("alert","Hello as3");
}
}
}
}
package
{
import flash.external.*;
import flash.net.FileReferenceList;
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.system.Security;
public class MultiSelectClass extends MovieClip
{
private var fileRef:FileReferenceList;
function MultiSelectClass()
{
Security.allowDomain( "*" );
myButton.addEventListener(MouseEvent.CLICK, myButtonClick);
addCallbacks();
}
private function addCallbacks():void
{
if (ExternalInterface.available)
{
ExternalInterface.addCallback("sendToFlash", fromJS);
}
return;
}
function myButtonClick(ev:MouseEvent):void
{
fileRef = new FileReferenceList();
fileRef.browse();
}
private function fromJS():void
{
myButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
private function sendToJS():void
{
if (ExternalInterface.available)
{
ExternalInterface.call("alert","Hello as3");
}
}
}
}