Hodisa va uni qayta ishlash. Yaratilgan forma ilovaning qay tarzda
ishlashini ko'rsatib beradi. Formadagi buyruq tugmachalari biror ish bajarishi uchun
ular sichqonchada ko‘rsatilib chiqillatiladi. Sichqonchada tugmachani chiqillatish
(bosish) hodisaga misol bo'lib, u ilovaning ishlash jarayonida hosil boladi. Bu yerda
hodisa so'zini yuz beradigan jarayon deb tushunish kerak.
Hodisalarga javob Delphida ulaming qayta ishlovchi protseduralar
ko'rinishida tashkil qilinadi. Turbo Pascal tilida yoziladigan bu protseduralar hodisa
qayta ishlovchisi («обработчик») deb ataladi.
Delphi avtomatik ravishda qayta ishlovchiga ikkita qismdan iborat nom
beradi. Birinchi qism nom formani, obyektga kiruvchilarni o‘z ichiga olib, ikkinchi
qism nom esa aynan obyekt o'zini va qayta ishlovchini aks ettiradi. Bizning
misolimizda forma nomi — Forml, birinchi buyruq tugmasi nomi «hisob» —
Buttonl, qayta ishlovchi nomi esa — Click. Endi Begin va End orasiga qayta
ishlovchi bajaruvchi Pascal tilidagi operatorlarni quyidagi protsedurada kiritish
mumkin. Bu protsedura «hisob» tugmasini ikki marta tez-tez chiqillatish bilan
ekranga chaqiriladi.
Procedure Tforml.Buttonlclick(Sender:Tobject);
Var
A,B,C:Real;
D:Real;
Xl,X2:Real;
Sl,S2:String[7];
Code: Integer;
Begin
Val(Editl.Text,a,Code);
Val(Edit2.Text,b,Code);
Val(Edit3.Text,c,Code);
If a=0 Then
Label6.Caption:=’Xato!
’+Chr(13)
+’Noma’lum
ikkinchi
darajasi
koeffitsiyenti’ +Chr(13)+’nolga teng’
Else Begin
d:=b*b-4*a*c;
If d<0 then label 6. Caption :='Yechim mayjud emas' Else Begin
xl:=(-b+Sqrt(d))/(2*a);
x2:=(b+Sqrt(d))/(2*a);
Str(xl:7:3,Sl);
Str(x2:7:3,S2);
Label6.Caption:=’Tenglama
ildizlari:’
+Chr(13)+’xl=’+Sl+
+Chr(13)+’x2=’+S2;
End;
End;
End;
Keltirilgan dastur matnida Turbo Pascalning oddiy Read va Write (Kiritish va
chiqarish) operatorlari ishlatilmagan. 0‘zgaruv-chilar qiymatini kiritish tahrirlash
maydonidan Text xossasiga murojaat qilish bilan amalga oshiriladi. Kiritilgan
o'zgaruvchilar qiymati matn bolgani uchun ular Val funksiyasi yordamida raqamga
o'tkaziladi. Kvadrat tenglamaning ildizlari xl va x2 lar qiymatlari Str funksiyasi
orqali mos ravishda si va s2 o'zgaruvchilarga matnli qilib uzatiladi. Natijani ekranga
matn ko'rinishida berish uchun Label6. Caption metkasiga qiymat qilib yuboriladi.
Xuddi shunday «yangi» va «chiqish» tugmachalari uchun ham qayta ishlovchi
protseduralarini tashkil qilish kerak. Ulaming matnlari quyidagi ko'rinishga ega.
Procedure Tforml.Button2Click(Sender:Tobject);
Begin
Editl.Text:=’ ‘;
Edit2.Text:=’ ‘;
Edit3.Text:=’ ‘;
Label2.Caption:=’ ‘;
Editl.SetFocus;
End;
Procedure Tforml.Buton3click(Sender: Tobject);
Begin
Forml. Close;
End;
Loyihani saqlash. Ilovani kompilatsiya qilish va ishga tushirish.
Loyihani saqlashda Delphi bir necha faylni tashkil qiladi. Ayrimlari butun
loyihani tavsiflashni, boshqalari forma va dastur modulini tavsiflashni o‘z ichiga
oladi. Agar hali saqlanmagan loyiha bo‘Isa Fayl (File) menyusidan Сохранит
проект (Save Project) buyrugh beriladi va keyin dastur moduli va proyekt nomi
beriladi.
Loyihani bog'lab bolgandan so‘ng Compile menyusidan compile
(Компилировать) buyrugh beriladi. Agar dasturda sintaksis xato
bo'lmasa ekranda kompilyatsiya to'g'ri o'tganligi haqidaxabarberiladi. Agar
kompilyatsiya dasturda qandaydir xatoni topsa. xato haqida ekranga ma’lumot
beradi. Kompilvatsiyadan to'g'ri o'tgan dastur uchun maxsus — .exe kengaytmali
fayl tuzib beradi va u faylni Delphi tizimisiz ishlatish mumkin.
Delphi tizimidan chiqmasdan turib ilovani ishga tushirish mumkin, buning
uchun Run menyusining Run buyrug'ini yoki F9 tugmachasini bosish kifoya bo'ladi.
Yuqoridagi misol uchun ilova ishga tushirilib a, b va c qiymatlari kiritilib «hisob»
tugmasi bosilsa dastur quyidagi natijani ekranga chiqaradi.
0>