في البداية ايضاحات : 1-الديفلوبر ليس موجه لمثل هذه الأغراض بل هو في المقام الأول أداة لبرمجة قواعد البيانات ولهذا نجد أن الدوال والاجراءات والخصائص الخاصة بالتعامل مع قواعد البيانات متوفرة بصورة غزيرة جداً في حين نجد أن تعامله مع المكونات وعناصر التحكم فيه شيئ من الصعوبة بعكس الفيجوال بيسك تماماُ 2-قبل قراءة هذا الدرس لا بد من قراءة الدرس السابق تماماً بعنوان ادراج واستخدام عناصر التحكم وان كنت في الدرس السابق قد اعتمدت OLE Container ومن ثم اختيار Create Control أما في هذا الدرس فاني سأعتمد على استخدم OCX Control الموجود ضمن Tool Pallete وبالتالي لن يكون هناك سوى خيار واحد في مربع الادراج وهو Create Control 3-أنا شخصياً لا أعرف من الفلاش الا اسمه ولم اشغل برنامج الفلاش أبداً وقد أخذت ملف فلاش للتجريب وعنصر التحكم الخاص به من أحد الزملاء . ولا يوجد عندي حتى ملف المساعدة الخاص بعنصر التحكم هذا . 4-ليس من المعقول ان أشرح جميع خصائص وأحدث الفلاش فقط فالهدف من الدرس ليس التلقين انما معرفة الطريقة و ما ينطبق على عنصر التحكم الخاص بالفلاش ينطبق على أي عنصر تحكم آخر .
:winntsystem32regsvr32 :winntsystem32swflash.ocx
Flash_file_Name Varchar2(100);Begin-- Load file from file systemFlash_file_Name:=GET_FILE_NAME (file_filter => 'Flash Files (*.swf)|*.swf|',message =>'Select Flah File', dialog_type=>OPEN_FILE); -- assign this file to movie property of flash controlShockwaveFlash_IShockwa_0.Movie(:item('Flash_Blk.Flash').INTERFACE,Flash_file_Name);End;
If :Flash_blk.play_directly=1 then ShockwaveFlash_IShockwa_0.Play(:item('Flash_Blk.Flash').INTERFACE);Else ShockwaveFlash_IShockwa_0.Stop(:item('Flash_Blk.Flash').INTERFACE);End if;
If :Flash_blk.play_directly=1 then ShockwaveFlash_IShockwa_0.ole_loop(:item('Flash_Blk.Flash').INTERFACE,1);Else ShockwaveFlash_IShockwa_0.Ole_loop(:item('Flash_Blk.Flash').INTERFACE,0);End if;
If :Flash_blk.SHOWPOPUP=1 then ShockwaveFlash_IShockwa_0.Menu(:item('Flash_Blk.Flash').INTERFACE,1);Else ShockwaveFlash_IShockwa_0.Menu(:item('Flash_Blk.Flash').INTERFACE,0);End if;
ShockwaveFlash_IShockwa_0.Zoom(:item('Flash_Blk.Flash').INTERFACE,:Flash_Blk.Z);
DeclareCur_Frame Number:=ShockwaveFlash_IShockwa_0.CurrentFrame(:item('Flash_Blk.Flash').INTERFACE);BeginShockwaveFlash_IShockwa_0.GotoFrame(:item('Flash_Blk.Flash').INTERFACE,Cur_Frame+1);End;
DeclareCur_Frame Number:=ShockwaveFlash_IShockwa_0.CurrentFrame(:item('Flash_Blk.Flash').INTERFACE);BeginShockwaveFlash_IShockwa_0.GotoFrame(:item('Flash_Blk.Flash').INTERFACE,Cur_Frame-1);End;