3.5. SHOWMESSAGE OYNASI Ikkinchi ilovaning kamchiliklari. Ikkinchi ilovani ishga tushirib, undagi “++” tugmasini ming marta bossak, ilova ekranining eni 16000 pikseldan oshib ketadi. Bu esa dasturchi uchun kechirib bo‘lmas xato. Uni bartaraf qilish uchun ilova oynasi eni ming pikseldan oshsa, boshqa kattalashtirmaslikka kelishib olamiz. Lekin foydalanuvchi tugmani bossada, unda hech qanday o‘zgarish ro‘y bermasa, dasturning to‘g‘ri ishlayotgani unda shubha tug‘dirishi mumkin.
2. ShowMessage protsedurasi. Buning oldini olish uchun ilova o‘z oynasi eni 600 dan oshib ketganligi haqida ekranga alohida oynada xabar chiqarsin. Bu ishni ShowMessage orqali amalga oshiramiz. Ikkinchi ilovadagi Button1 tugmasini ikki marta bosib, paydo bo‘lgan protseduradagi avvalgi ikki operatorni quyidagicha qayta yozib chiqamiz:
If Form1.Width<600 then begin
Form1.Width:=Form1.Width+16;
Form1.Height:=Form1.Height+9; End else
ShowMessage(‘Oyna boshqa kengaymaydi’); Ilovani ishga tushirib, uning tugmasini bir necha marta bossak, ekranga quyidagi yozuv chiqadi. Undagi OK tugmasini chertmagunimizcha, ilova o‘z ishini to‘xtatib turadi.
3. IntToStr funksiyasi. Ilovaning ishini yanada yaxshilaymiz. Ilova o‘z oynasining o‘lchamlarini o‘zgartirganda ular qanday bo‘lgani bizga mavhumligicha qolmoqda. Uni ilova oynasiga chiqarishning iloji bormi? Hozircha biz buning bitta yo‘lini bilamiz: oyna o‘lchamlarini oyna sarlavhasiga chiqarish. Buning uchun
Form1.Caption:=Form1.Height+’*’+Form1.Wide; operatoridan foydalanamiz. Lekin bu operatordan foydalanib bo‘lmaydi, chunki unda bir turdagi o‘zgaruvchiga ikkinchi turdagi o‘zgaruvchini kiritishga urinish bo‘layapti. Delphida bu xatoga olib keladi.
94 Butun son turidagi kattalikni matn satri turidagi kattalikka o‘tkazish uchun IntToStr (integer to string – butundan satrga olingan) funksiyasidan foydalanamiz:
Form1.Caption:=’(‘+IntToStr(Form1.Height)+’*’+In
tToStr(Form1.Wide)+’)’; Unga ilovaning haqiqiy nomini ham qo‘shib qo‘yamiz:
Form1.Caption:=’Uchinchi ilova’+ Form1.Caption;
Button1 tugmasini ikki marta bosib, dastur kodi oynasini chaqiramiz va oxirgi ikki satrni unga qo‘shib qo‘yamiz:
If Form1.Width<600 then begin
Form1.Width:=Form1.Width+16;
Form1.Height:=Form1.Height+9; End else
ShowMessage(‘Oyna boshqa kengaymaydi’);
Form1.Caption:=’(‘+IntToStr(Form1.Height)+’*’+IntTo
Str(Form1.Width)+’)’;
Form1.Caption:=’Uchinchi ilova ’+ Form1.Caption; Ilovani ishga tushirib, uning sarlavhasi o‘zgarishini kuzatamiz:
IV.Yangi mavzuni mustahkamlash.
Darslik bilan ishlash. Mashqlarni bajarib, o’quvchilar fikrlarini jamlash.
Klaster usuli yordamida mavzuni yoritadilar.