View Full Version : چگونگی ارسال پارامتر بین فلاش و دلفی توسط Shock Wave Flash
amir_pro
جمعه 04 اسفند 1385, 08:38 صبح
از بین دوستان کسی هست که این کار را بلد باشه-یعنی ارسال پارامتر بین فلاش و دلفی
مثلا توی دلفی دو تا عدد جمع کنه و حاصل را توی فلاش نشون بده؟
ممنون
Valadi
جمعه 04 اسفند 1385, 09:08 صبح
جستجو کن چند وقت پیش دوستم آقای جعفری یک مطالب جالبی در رابطه هم این موضوع قرار داده بود ضمنا این مطلب به همراه سورس بود
Farhad_Mohammadi
جمعه 04 اسفند 1385, 13:03 عصر
Set Parameter : shockwave1.setvariable ( "varname", "value);
Get parameter : shockwave1.getvariable ("Varname");
پدرخوانده
شنبه 05 اسفند 1385, 17:08 عصر
می بخشید بنده نیز همین سؤال را داشتم با توجه به اینکه درخواست بنده مثال معکوس این حالت هست یعنی بخواهیم پارامتری را از فایل فلش بخوانیم
با توجه به جستجو و خواندن مقاله آقای معموری در سایت irandeveloper و موارد مشابه در همین سایت از طریق پارامتر fscommand موجود در ocx مربوطه باید اینکار انجام شود ولیکن ابتدا باید متغیر یا ... در فایل فلش تنظیم شده باشد تا بتوان در دلفی آن را خواند. (در حقیقت اینکه چگونه در فایل فلش دستکاری کنیم که مثلا با کلیک بر روی قسمت از فایل فلش مثلا فرم دوم اجرا شود)
(فکر کنم در قسمت actvion script یا... باید باشد ولی حقیقت با اینکه سورس فلش را داشتم نتونستم کاری بکنم فقط می دونم اونجا باید یک متغیری یه چیزی نوشته بشه و همون را در قسمت fscommand مربوطه در ocx از طریق پارامترهای command, args خوانده شود) ولی نحوه عملی (مثال) این مورد را نمی دانم ممنون میشم در این مورد راهنمایی کنید
Farhad_Mohammadi
شنبه 05 اسفند 1385, 19:43 عصر
با سلام به دوستم.
ارتباط بین دلفی و فلش یک ارتباط بر اساس ComServer می باشد. یعنی تمامی این داستان هایی که من براتون خواهم گفت در VB و C# و ... کار می دهد.
ارتباط اول : ارتباط دلفی با فلش
متغیر های موجود در فلش با نام هایی چون _root.text1 و یا به نام های دیگر شناخته می شود. برای تغییر مقدار این متغیرها می توانید به شکل زیر عمل کنید :
Shockwave1.setVariable ("_root.text1", "Hello");// Set Variable
این دستور برای مقدار دهی به متغیر استفاده می شود.
Shockwave1.getVariable ("_root.text1"); //Get Variable
این دستور نیز مقدار یک متغیر از درون فلش را برای شما بصورت رشته ای باز می گرداند.
*** فقط توجه کنید که در Action Script چون همه استانداردها بر اساس ECMA-262 می باشد Case Sensivity داریم.
ارتباط دوم : ارتباط فلش با دلفی
این ارتباط یک نوع ارتباط ساده از نوع رویدادی می باشد. شما هر جا در فلش دستور fscommand را اجرا کنید یک رویداد به نام Onfscommand در دلفی رخ می دهد. دستور fscommand در Action script دو پارامتر رشته ای دریافت می کند که دقیقا در دلفی همان ها را در رویداد تحویل شما می دهد.
مثلا :
/* Action Script Code /*
on(Click) //Click Event
{
fscommand ( "A", "B"); //sending parameters
}
// On Delphi
procedure shockwave1.onFscommand ( ... );//Procedure
begin
if (command =="A" )
{
showmessage ( "Hello My World " );
}
end
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.