AutoPlayda ssenariylar yozish
Agar ishchi sohadagi (aniqrog‘i sahifadagi) biror obyekt bajarishi kerak bo‘lgan funksiyani xossalar panelidan foydalanib belgilamoqchi bo‘lsak, u holda bitta obyekt uchun faqat bitta funksiya biriktiriladi, xolos. Ammo real sharoitda bitta obyekt bir nechta funksiyani bajarishiga zaruriyat tug‘ilib qolishi mumkin. Bunday sharoitda vaziyatdan chiqish uchun xossalar panelidan tanlangan funk- siyani bekor qilish va har bir funksiya uchun alohida-alohida ssenariy (script)lar yozish maqsadga muvofiq bo‘ladi.
Masalan, bir sahifaga audio musiqani qo‘yib, boshqa sahifaga o‘tganda musiqani o‘chirish uchun uning “On Show” hodisasiga oid quyidagicha ssenariyni yozish mumkin [9, 14]:
Audio.Load(0, "AutoPlay//Audio//01.ogg", true, false); Bunda: true – sahifa ochilishi bilan audio musiqa ishga tushishini, false esa boshqa sahifaga o‘tganda bu audio musiqaning davom etmasligi yoki takrorlan- masligini bildiradi [20].
Bundan tashqari, sahifaga Tree obyekti joylashtirilgan bo‘lishi mumkin. U holda bu Tree obyektidan foydalanganda uning tarmoqlarini ishga tushirish uchun quyidagi ssenariyni yozish mumkin:
if Tree.GetNode("Tree1", "1.1").Selected then Page.Jump("PgWebMavzu1");
elseif Tree.GetNode("Tree1", "1.2").Selected then Page.Jump("PgWebTest");
end
Bu ssenariyga binoan, Tree obyektining 1-darajali tarmog‘ida turgan 1-satr belgilanib, sichqonchaning DoubleClick hodisasi ishlatilsa, u holda “PgWeb- Mavzu1” nomli sahifa yuzaga keladi.
Agar Tree obyektining 1-darajali tarmog‘ida turgan 2-satr belgilanib, ikki marta sichqoncha chap tugmasi bosilsa (ya’ni sichqonchaning DoubleClick hodisa- si ishlatilsa), u holda “PgWebTest” nomli sahifa yuzaga keladi.
Shuningdek, biror buyruq tugmasi (Button)ni bosish orqali biror .exe faylni ishga tushirish kerak bo‘lsa, u holda ssenariy quyidagicha yoziladi:
Shell.Execute("AutoPlay\\Docs\\MyProg.exe", "", "", SW_NORMAL, true);
Ba’zida turli variantlarda turli muloqot oynasini yuzaga keltirishga oid tarmoqlanuvchi algortmni yozishga to‘g‘ri keladi. Masalan, bosh sahifa ishga tushishidan oldin parol so‘ragan kabi “InputBox” dastlab ekranga chiqishini xohlasangiz, u holda bosh sahifaning “Preload” bandi uchun quyidagi scriptni yozish kifoya:
name = "";
while (name ~= "CANCEL") and (name == "") do
name=Dialog.Input("Diqqat", "Ismi sharifingizni kiriting:");
if name == "" then
result=Dialog.Message("Xato!", "Ma’lumot kiritmadingiz!", MB_OK, MB_ICONEXCLAMATION, MB_DEFBUTTON1);
elseif name =="CANCEL" then
name=Dialog.Input("Personal Information", "Bu yerga muallifning ismi sharifi kiritiladi:");
end
Paragraph.SetText("Paragraph5", name);
end
Ssenariy (Script) yozishda asosiy e’tibor obyekt ustida yuzaga keladigan hodisaga qaratiladi. Masalan, Page obyektining hodisalarini olib qaraylik: On Preload, On Show, On Close, On Timer,On Audio, On Size, On Menu, On Key, On Mouse Button, On Mouse Move.
Agar Page obyektining dastlabki yuzaga kelishidan oldin biror hodisa bajarilishi kerak bo‘lsa, u holda ssenariy uning On Preload hodisasi uchun yozilishi kerak bo‘ladi.
Sahifa yuzaga kelgan va ko‘rinishli holatga o‘tganda hodisa yuz berishi kerak bo‘lsa, u holda uning On Show hodisasiga ssenariy yoziladi.
Sahifa yopilishida yuz beradigan hodisa uchun ssenariy uning On Close
hodisasiga nisbatan yoziladi.
Sahifada biror obyekt holati muayyan vaqt oralig‘ida yuz berishi kerak bo‘lsa, u holda uning On Timerhodisasi uchun kod yoziladi.
Har bir obyektning o‘ziga xos yuz beradigan hodisalari mavjud. Bu hodisa- larni quyidagi jadvaldan ko‘rishimiz mumkin:
Dostları ilə paylaş: |