2. O’tilgan mavzuni so’rash: O’quvchilarga o’tilgan mavzu bo’yicha darslikdagi savollar orqali murojaat etiladi va baholanadi. 1. Delphi da yangi ilova yarating va uni 01_03 papkaga saqlang.
2. Ilovaning sarlavhasini salom, olam! deb o‘zgartiring.
3. Ilova oynasiga uchta boshqarish tugmasini bir ustun qilib joylang.
3. Yangi mavzu bayoni:
1. Ikkinchi ilovaning kamchiligi. 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 600 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
Forml .Width:«Forml.Width+16;
Forml .Height:-Forml .Height4-9; End else
ShowMessage('Oyna boshqa kengaymaydi');
Ilovani ishga tushirib, uning tugmasini bir necha marta bossak, ekranga quyidagi yozuv chiqadi. Undagi OK tugmasini bosmagunimizcha, 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
Forml.Caption:=Form1.Height+’ * ‘ +Forml.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. Butun son turidagi kattalikni matn satri turidagi kattalikka o'tkazish uchun IntToStr (integer to string - butundan satrga jumlasidan olingan) funksiyasidan foydalanamiz:
600>
Dostları ilə paylaş: |