الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

درس في كيفية مخاطبة Flash MX 2004 مع vb.net

بدأه الشهاب الحارق في 20 يوليو 2005 · 22 رد · 4,471 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

درس في كيفية مخاطبة Flash MX 2004 مع vb.net والعكس

الطريقة كالتالي

أولاً نقوم بإدراج Shockwave Flash Objects وذلك عن طريق إختيار الـ ToolBox ثم بالزر الإيمن

نختار Add / Remove Items ثم في الـ Com Tab نختار الـ Shockwave Flash Objects

بعد عملية الإدراج لهذا الـ Control سيكون بمثابة الحاوية لفلم Flash MX 2004

وسيتم تحديد الفلم عن طريق الخاصية Movie بحيث نسند لها مسار الفلم

نستطيع قراءة الرسائل الموجهة من Flash MX 2004 إلى VB.NET عن طريق الحدث FSCommand

بحيث يملك هذا الحدث ممرر باسم e كـ FSCommandEvent

قبل أن أتكلم عن الخاصية e دعنا نتعرف على الامر fsCommand في Flash MX 2004

التركيبة النصية لهذا الامر

fscommand("command", "parameters")

ومثال على ذلك يكون بهذا الشكل

fscommand("SendMessage", "arabTeam");

الان الكلمة SendMessage هو اسم المتغير أو قيمة نصية بمثابة المتغير الذي يحتوي على القيمة arabTeam

و arabTeam هو في الحقيقة ممرر parameter لإحتواء القيمة المراد إرسالها لـ (مثلاً VB.NET أو اي برنامج أخر)

نستطيع عن طريق الخاصية e معرفة المتغير مع قيمته

بحيث تملك هذا الخاصية متغير باسم command سيكون بهذا الشكل

If e.command = "SendMessage" Then
            lblMessage.Text = e.args.ToString()
        End If

تلاحظ الشرط إذا كان اسم الـ command يساوي اسم المتغير

فإن الممرر سيكون في الـ e.args سيكون فيه في هذا المثال القيمة arabTeam

هذا بالنسبة لإرسال القيمة من Flash MX 2004 إلى VB.NET

و العكس اي من VB.NET إلى Flash MX 2004 سيكون كالتالي

أولاً في Flash MX 2004 نستخدم السلوك Watch Method

يحتوي على ثلاثة ممررات ( الثالث إختياري لذلك قمنا بحذفه نسبةً لهذا المشروع)

الأول هو اسم العنصر المراد مراقبته

الثاني هو اسم الوظيفة التي ستنفذ بموجب ذلك (وظيفة فيها نصوص برمجية تعمل عندما يلتقط السلوك watch اسم العنصر في

الممرر الأول , شاهد هذا المثال

_root.watch("Event", values);

كما تلاحظ الـ root هو المشهد الرئيسي في Flash و يعرف بـ stage ثم السلوك watch وبه اسم العنصر وهو Event و values

هو اسم الوظيفة الوظيفة مكتوبة بهذا الشكل

function values(prop, null, TagValue) {
	whichButton(TagValue);
}

الان prop الممرر الأول سيحوي القيمة Event الممرر الثاني يعرف ب oldvalue لا نحتاجه ضمن مشروعنا

لذلك اسندنا لهُ القيمة null و الثالث هو TagValue يحوي القيمة الجديدة و التي ستكون مرسلة من VB.NET

ثم باقي النصوص whichButton هذه ايضاً وظيفة ترسل قيم لشغيل الصوت في فلاش أو إيقافه أوإعادة الصوت

كما هو في الملف المرفق .

الان لإرسال قيمة من VB.NET إلى Flash MX 2004 سيكون بهذا الشكل

fs.SetVariable("Event", 1)

حيث fs هو اسم العنصر الذي أدرجناه في النموذج الذي يحوي ملف أو فلم Flash

ثم إستخدمنا الإجراء SetVariable ثم كتبنا اسم العنصر Event و أرسلنا له القيمة 1

هذه القيمة ستكون في الممرر TagValue

هذا والله أعلى و أعلم

Flash.zip

في المثال يتضح المقال

#3

جزاك الله خير الجزاء اخي العزيز

اتمنى لك الموفقية في دروس مفيدة وجديدة

المهندس

عدي ياسين الموسوي

#4

درس مفيد شكرا ليك يا اخى

#5

السلام عليكم

لا شكر على واجب , والبركة فيكم يا شباب

في المثال يتضح المقال

#6

وفقك الله اخي العزيز

ارجو ان تستمر في دروسك المفيده

المهندس

عدي ياسين

#7

شكرا اخي الغملاسي على هذا المجهود الرائع ..

#9

شكراً جزيلاً

مبرمج مبتدئ...

#10

هل يحتاج الفلاش الى برنامج مشغل الفلاش في جهاز العميل؟؟

ام ان الاداة هذه تقوم بالواجب؟

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#11

السلام عليكم

والله أعلم, أن هذه الأداة لا علاقة لها بتوفر مشغل فلاش في جهاز العميل من عدمه, لان مهمتها أن تقوم بجلب فلاش في النموذج فقط.

بدون تجربة طبعاً , لكن هذا الذي يبدو لي والله أعلم.

في المثال يتضح المقال

#12

طيب انا عندي 2005 ما اشتغلت الاداة يعطيني رسالة خطأ عندما احاول سحبها من الادوات واحطها في النموذج

يقول لي انه فيه خطأ في التسجيل حق active -X وهذا نص الرسالة

Faild to import ActiveX control - please ensure it is properly registred

اش المتوقع في الخطأ؟

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#13

بسم الله الرحمن الرحيم

يعلم الله انك موسوعة هذا المنتدى .... ماشاء الله

فاسال الله ان يفتح على قلبك علم الدنيا والاخره

اللهم صلي على محمد وعلى آل محمد كما صليت على إبراهيم وعلى آل إبراهيم إنك حميد مجيد

وبارك على محمد وعلى آل محمد كما باركت على إبراهيم وعلى آل إبراهيم إنك حميد مجيد

#14
اقتباس
بسم الله الرحمن الرحيم

يعلم الله انك موسوعة هذا المنتدى .... ماشاء الله

فاسال الله ان يفتح على قلبك علم الدنيا والاخره

100% ....... :D

#15

السلام عليكم

لا شكر على واجب,

أخي أعتقد أنك أدرجت العنصر ShockWave ActiveX Control

و المراد هو ShockWave Flash Object

من خلال التجربة لم تظهر اي مشكلة في إدراج الاثنين..

عملية التسجيل للعنصر , قد تكون عملية غابرة , نسيت من سنوات, الان قم بتسجيل الـعناصر باستخدام regsvr32

والله أعلم كانت بهذا الشكل

regsvr32 ActiveX Path & Name

شاهد الملف المرفق فلاش مع VBNET 2005 بالتوفيق إن شاء الله.

FlashVBNET2005.zip

في المثال يتضح المقال

#16

اخي الغملاسي الف الف شكر

صح كلامك كنت حاط علامة صح على الفلاش اوبجيكت في الريفرنس

ولكن لدي سؤال

1- كيف تضيف الفلاش الى المشروع؟؟ انا اضفته عن طريق resources بس ماطلع في المشروع

2- لم استطع استخدام الفلاش في نموذج splash التي تظهر عند تشغيل البرنامج بيعطي خطأ اعتقد انه لايمكن استخدام الفلاش هنا !!!

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

#17

السلام عليكم

عندما استخدم الدالة stop

يتوقف العرض ولكن الصوت لا يزال يعمل

فمالحل لإيقاف العرض والصوت مع بعض

وشكرا

#18

السلام عليكم

ليست هنالك مشكلة في وضع فلم فلاش في النموذج splash إطلاقاً..

بالنسبة للإيقاف الصوت , تستطيع أن ترسل Flag متغير منطقي لفلم فلاش بحيث تساوي False مثلاً

و من ثم يقوم هو بإستخدام الدالة StopAllSounds وفقاً لتلك القيمة المرسلة من VB.NET, والله أعلم.

في المثال يتضح المقال

#19

السلام عليكم

يبدوا أني قد وجدت ضالتي هنا معكم بإذن الله أرجوكم دلوني كيف أقوم بإزالة قائمة الفلاش التي تظهر عند الضغط بالزر الأيمن للماوس

والموضوع قد طرحته من قبل ولكن لم أجد من يرفق بحالي ويرد ولو بلا أعلم والمشاركة علي هذا الرابط

/index.php?showtopic=98031

Electrical communications and electronics engineer

C++ Developer

 


stackoverflow profile : http://stackoverflow.com/users/249120/ahmed-safan


 


Just Keep Moving On , never stop until you are dead


#20

اخى الشهاب الحارق

جزاك الله خيرا على هذه الامثلة

ولكن جرب ان تعمل لها نشر

لن يعمل ملف الفلاش

ستظهر فقط الاداة فارغة

لماذا ؟؟؟؟؟؟

وبالنظر للمجلد النهائى

لن تجد ملف الفلاش

واعتقد ان هذا هو السبب

فلماذا ؟؟؟؟؟؟؟؟؟

كلمتان ثقيلتان فى الميزان حبيبتان الى الرحمن

" سبحان الله وبحمــــــــــــــــــــــــــــــــــده ، سبحان اللــــــــــــــــــــــــــــــــــــــه العظـــــــــــــيـم "

#21

سلمت الأيادي أخي (الشهاب الحارق)

وبالنسبة لعدم ظهور الفلاش في الملف النهائي أتوقع ان السبب هو عدم إرفاقه عند عمل تحزيم للمشروع

#22

شكرا لك اخي على الشرح الوافي لكن ياريت

تشرح لنا او تعلمنا طريقة نلغي ظهور قائمة الزر الايمن نهائياً

مع العلم انني كنت اخفيها فى الفيجوال بيسك 6 بمنع النقر بالزر الايمن على الفور وجميع الادوات التى تقع علية

بدوال الـ API

ارجوا منكم الرد

رُب ( وامعتصماه ) إنطلقت *** ملْء أفـواه الصبايا اليُتـم

لامـسـت أسْـماعـهـم لاكـنهـا *** لمْ تلامس نخْوة المعتصم

#23

جزيت خيرا على هذا البرنامج السهل الف الف شكر :wink: :wink:

مواضيع مشابهة