DASTURLASH TOMON OLG`AAAAAA

SEO ingliz tilidagi Search Engine Optimization (Qidiruv Mashinalari uchun Moslashtirish) so`zlarining bosh harflaridan olingan. Bu soha saytlarning qidiruv mashinalari tomonidan qanday indeks qilinishi, sayt ma`lumotlarining foydalanuvchilar tomonidan qidiruv mashinalari yordamida qanchalik samarali topilishini o`rganadi. SEOning asosiy maqsadi sayt ma`lumotlarini qidiruv mashinalari uchun imkon qadar moslashtirish hisoblanadi. SEO juda katta soha bo`lib, juda ko`p jihatlarni o`z ichiga oladi. Ushbu maqolada SEO haqidagi eng sodda va boshlang`ich tushunchalarni ko`rib o`tamiz. Keyingi maqolalarda SEOning boshqa, mukammalroq jihatlari haqida fikr yuritamiz.

Bilasizki, har bir saytning ishlashidan asosiy maqsad qaysidir jihatdan daromad olish hisoblanadi. Ba`zan bu daromad faqat pul mablag`lari bilan o`lchanmasada, ammo har bir sayt albatta qaysidir jihatdan foyda ko`rish uchun tayyorlanadi, desam mubolag`a bo`lmaydi. Saytning davomadini belgilab beruvchi asosiy omil – bu uning foydalanuvchilari hisoblanadi. Hech kim tashrif buyurmaydigan saytning har qancha sifatli hostingda joylashganligi, har qancha chiroyli domenga ega ekanligidan qat`iy nazar, qadr va qimmati hech narsaga arzimaydi. Sayt o`zining foydalanuvchilari bilan tirik. Foydalanuvchilar foydalanmaydigan sayt esa keraksiz buyumdan farq qilmaydi. Saytga foydalanuvchilarni olib keladigan asosiy narsa ma`lumot hisoblanadi. Har bir foydalanuvchi u yoki bu saytga faqat qaysidir turdagi ma`lumot uchun kiradi. Shuning uchun sayt samaradorligini, tashrif buyuruvchilar sonini oshirish maqsadida ko`pchilik saytlarni reklama qilishadi. SEO esa huddi shu reklamaning bepul turi hisoblanadi. Ya`ni, minglab dollar sarflab reklama qilingan saytlar har ba`zan SEOga yaxshi e`tibor berilgan saytlardek ko`p foydalanuvchini o`ziga jalb qila olmaydi.

O`z saytingizga ega bo`lganingizdan so`ng unga ma`lumotlarni kiritib qo`yishingizning o`zi kifoya qilmaydi. Saytingiz ma`lumotlarini foydalanuvchilar tomonidan oson topilishini ta`minlash haqida ham o`ylashingiz kerak. Foydalanuvchilar ma`lumotlarni asosan Google, Yandex, Yahoo, Bing kabi eng ko`p tarqalgan qidiruv mashinalari yordamida qidirib topishadi. Bu mashinalarning har bir kalit so`z uchun minglab ma`lumotlar indeksi bo`ladi. Sizning saytingiz ma`lumotlari qidiruv mashinalaridagi indekslar ichidan yuqoriroq joy egallashini istasangiz, ular orqali saytingizga ko`proq tashrif buyuruvchilar kelishini xohlasangiz saytingizning SEO holati haqida bosh qotirishingiz kerak.

Saytning SEO darajasi asosan original maqolalar, to`g`ri tanlangan kalit so`zlar asosida ko`tariladi. WordPress va boshqa CMS uchun plaginlar yordamida SEO ishi ancha osonlashtirilgan. Hozirgi kunda eng ko`p ishlatiladigan Yoast Seo Plagini saytingiz ma`lumotlarini qidiruv mashinalari uchun samarali moslab berishi mumkin.

HTTP ingliz tilidagi «Hyper Text Transfer Protocol» so`zlarining bosh harflaridan olingan. Oxirida qo`shiladigan S qo`shimchasi esa «Secure» so`zining bosh harfi hisoblanadi. Aslida HTTPS – bu HTTP protokolining xavfsiz shakli bo`lib, HTTPdan farqli ravishda HTTPS protokolida barcha murojaatlar kodlangan shaklda yuboriladi.

Ma`lumki saytlar serverdan foydalanuvchining brauzerigacha bo`lgan aloqa birligida ishlaydi: foydalanuvchi ma`lumotlarni saytga kiritganda brauzer ma`lumotlarni serverga jo`natadi va aksincha, foydalanuvchi ma`lumotlarni serverdan so`raganda shu aloqa yo`li orqali ma`lumotlar serverdan foydalanuvchining brauzerigacha yuboriladi. Oddiy HTTP orqali ma`lumotlar almashinuvi sodir bo`lganda serverdan brauzergacha bo`lgan aloqa xavfli bo`lishi mumkin. Xakerlar bu aloqani buzib kirib serverdan foydalanuvchiga, yoki foydalanuvchidan serverga yuborayotgan ma`lumotlarni o`g`irlab olishi mumkin. Bunday xavfni bartaraf etish uchun HTTPS protokoli yo`lga qo`yilgan.

HTTPS serverdan brauzergacha va aksincha bo`lgan aloqlarni kodlash va qayta kodlash tarzida ishlaydi. Xavfsiz aloqaning asosini SSL yoki TLS xavfsizlik protokollari tashkil etadi. Ularning ikkalasi ham shaxsiy va ommaviy kalitlar asosida ishlaydi. Shaxsiy kalit faqat serverda saqlanadi va u maxfiy hisoblanadi. Ommaviy kalit esa hamma uchun ochiq bo`lib, erkin tarqatiladi. Server foydalanuvchiga qaysidir ma`lumotni jo`natayotgan vaqtida uni o`zidagi shaxsiy kalit yordamida kodlaydi va brauzerga uzatadi. Natijada brauzergacha kelayotgan aloqa kodlangan holatda bo`ladi va mobodo qaysidir xaker uni brauzergacha buzib, o`qishga harakat qilsa, undagi ommaviy kalit yuborilgan aloqa ma`lumoti bilan mos tushmaydi, shu tarzda qayta kodlash amalga oshirilmaydi. Bu aloqaning xavfsizligini ta`minlaydi. Sayt yuklanayotganda har bir brauzer avtomatik tarzda serverdan ommaviy kalitni qabul qilib oladi va ikki tomonlama bir xil kalit asosida serverda kodlangan ma`lumot brauzerga kelib qayta kodlanadi va foydalanuvchiga ko`rsatiladi. Foydalanuvchining ham ham o`z navbatida yuboradigan ma`lumoti brauzer ommaviy kaliti tomonidan kodlanadi va serverga yetib borganidan so`ng qayta kodlab, ma`lumot saqlanadi. Oddiy qilib aytganda server va brauzer secure protokol yordamida bir-birlariga ma`lumotni «qadoqlab» yuborishadi. O`rtadagi ma`lumot qadoqi maxsus kalitsiz ochilmasligi natijasida aloqa xavfsizligi ta`minlanadi.

HTTPS protokoli saytdan serverga va serverdan saytga maxfiy ma`lumotlar yuborishda, kredit karta va bank xisob raqami amaliyotlarini amalga oshirishda ishlatiladi. Bu protokoldan foydalanish uchun har bir sayt (server) o`zining SSL sertifikatiga ega bo`lishi kerak. Bitta SSL sertifikatining shaxsiy kaliti millardlab brauzerlarga yuboriladigan ommaviy kalitlar bilan hamkorlikda ishlaydi. Bitta saytning kaliti boshqa saytning yuborgan xavfsiz ma`lumotini ocha olmaydi. Agar sayt joylashgan serverda SSL yoki TLS protokoli sertifikati o`rnatilgan bo`lsa, brauzerlar bu saytning (serverning) xavsiz ekanligini turli belgilar bilan ifodalashadi. Ko`pincha brauzerlarda bu belgi sayt nomining yashil rang bilan berilishida ko`rinadi:

Agar saytingiz va serveringiz orqali hech qanday maxfiy ma`lumotlar, xakerlar xujumidan saqlanishi kerak bo`lgan muhim amaliyotlar amalga oshirilmasa, HTTPdan foydalanishni davom ettirishingiz mumkin. Ammo saytingizda foydalanuvchilarning pul mablag`lari, shaxsiy axborotlari va shunga o`xshash hech kimga ko`rsatilmasligi kerak bo`lgan ma`lumotlar bilan amaliyotlar qilinsa, Siz uchun HTTPS protokolida ishlash juda zarur hisoblanadi.

Xullas, HTTPS protokolidan foydalanishning quyidagi afzalliklari bor:

foydalanuvchi ma`lumotlari, kredit karta raqamlari va boshqa maxfiy ma`lumotlar kodlangan tarzda yuboriladi va uni xakerlar buza olmaydi;

foydalanuvchilar brauzerda sertifikatning «yashil» ekanligini ko`rib saytning ishonchli ekanligini bilishadi;

foydalanuvchilar xavfsizlik sertifikatiga ega saytlar orqali harid qilishda o`zlarini xavfsiz his qilishadi;

sertifikati bor saytlarga ko`proq ishonishadi.

Маруфжон Рахмонов, [20.06.20 08:24]

3 — amaliy ish

Ўқитувчи, [20.06.20 08:24]

Qaysi ulanishdan foydalanmasligingizdan qat`iy nazar, http: // dan yuborilgan ma`lumotni yuboruvchi kompyuter va qabul qiluvchining orasidagi har qanday kompyuter o`qishi mumkin.

Agar https: // bo`lsa, ma`lumotlar shifrlangan va hech qanday kompyuter unga kira olmaydi. Bank, kredit va debet kartalari kabi maxfiy ma`lumotlarni yuborish uchun siz https: // qidirishingiz kerak.

To`g`ri aniqlash uchun buni PC Mag «(HyperText Transport Protocol Secure) xavfsiz veb-serveriga kirish uchun ishlatiladigan protokoldan o`qing. Agar https: // umumiy http: // o`rniga veb-manzilning prefiksi sifatida ishlatilsa, sessiya odatda SSL bo`lgan xavfsizlik protokoli tomonidan boshqariladi va veb-serverga va undan uzatiladigan ma`lumotlar shifrlanadi. Moliyaviy bo`lmagan veb-saytlar HTTPS-dan tobora ko`proq foydalanmoqdalar. Masalan, Vikipediya 2015 yilda HTTPS-ga o`tdi. HTTP protokoli bo`yicha tafsilotlarni HTTP-ga qarang. Xavfsizlik protokoli haqida ma`lumot olish uchun SSL va xavfsizlik protokoli-ga qarang. Hamma joyda HSTS va HTTPS-ni ko`ring. «

Siz batafsil ma`lumotni ushbu Tadbirkor jurnalining maqolasida topishingiz mumkin

HTTP ma`lumotlari (Eslatma: oxirida «s» yo`q) shifrlanmagan va uni ikki tizim o`rtasida uzatiladigan ma`lumotlarni to`plash uchun uchinchi tomon to`sib qo`yishi mumkin.

Buni HTTPS deb nomlangan xavfsiz versiyasidan foydalanib tuzatish mumkin, bu erda «S» xavfsizdir.

Bu SSL sertifikatidan foydalanishni o`z ichiga oladi — «SSL» Secure Sockets Layer — bu veb-server va veb-brauzer o`rtasida xavfsiz shifrlangan aloqani yaratadi.

HTTPS holda, barcha uzatilgan ma`lumotlar xavfli emas. Bu, ayniqsa, ulanish orqali maxfiy ma`lumotlar uzatiladigan veb-saytlar uchun juda muhimdir. Masalan, onlayn karta to`lovlarini qabul qiladigan elektron tijorat veb-saytlari yoki foydalanuvchilar o`z login ma`lumotlarini kiritishlari kerak bo`lgan kirish joylari. «

4 — amaliy ish

Ўқитувчи, [20.06.20 08:26]

HTTP (Gipertekstni uzatish protokoli)

WWW tomonidan ishlab chiqilgan, tarqatilgan, hamkorlikdagi va gipermedia ma`lumotlarini uzatadigan protokol.

HTTPS (Himoyalangan HTTP)

Tarqatilgan, hamkorlikdagi va gipermedia ma`lumotlarini uzatadigan xavfsiz protokol.

HTTP va HTTPS o`rtasidagi asosiy farq

HTTP — bu Internet orqali aloqa qilish uchun himoyalanmagan protokol. HTTP — bu Internet orqali aloqa qilishning xavfsiz protokoli.

Shuning uchun aloqalarni shifrlash uchun HTTPS-dan foydalanadigan xavfsiz deb nomlangan veb-sayt va faqat HTTP-trafikni taklif qiladigan veb-sayt ta`minlanmagan deb aytiladi.

Uy tarmog`idan yoki jamoat tarmog`idan foydalanayotganingizdan qat`iy nazar

HTTP veb-saytiga kirganingizda, sizning shaxsiy va maxfiy veb-saytingiz xavfsiz emas. Agar siz HTTPS veb-saytiga kirgan bo`lsangiz, unda hamma narsa xavfsiz.

Muvaffaqiyatli kiberhujumlar va boshqa zararli dasturlarning HTTP veb-saytlariga hujum qilish darajasi HTTPS veb-saytiga nisbatan yuqori.

HTTP-ga ega veb-saytga kirishda shifrlashga umid yo`qligi sababli, buzilish xavfi katta.

Agar biz HTTP va HTTPS veb-saytlarining tezligini taqqoslasak, HTTPS bu safar g`alaba qozonadi, chunki tezlik nisbati yuqori.

Google, dunyodagi etakchi qidiruv tizimi, HTTP kirish sahifalarini ishlatadigan veb-sayt ularni xavfsiz emas deb hisoblaydi va xato haqida xabar beradi. Google bilan birgalikda Firefox ham buni e`lon qildi.

Bundan tashqari, Google HTTPS (SSL sertifikati) bilan shifrlangan veb-sayt SEO-ning yuqori darajadagi ustunligini taklif qiladi.

HTTP xavfli va HTTPS majburiy holga kelganligi sababli, Microsoft, Apple, Google Chrome va Firefox foydalanuvchilardan faqat shifrlangan ulanishlardan foydalanishni so`rashmoqda.

HTTPS (inglizcha: Hypertext Transfer Protocol Secure — «Xavfsiz Gipermatn Uzatuvchi Protokol») HTTP protokoli kengaytmasi bo`lib, shifrlashni dastaklaydi. HTTPS orqali uzatiladigan maʼlumot SSL yoki TLS kriptografik protokoliga solinadi, shunday qilib bu ma`lumotlar himoyalanadi. HTTP dan farq qilib, HTTPS uchun 443 TCP porti ishlatiladi.

Tizim Netscape Communications Corporation tomonidan autentifikatsiya va himoyalangan bog`lanishni ta`minlash uchun ishlab chiqilgan. HTTPS xavfsizlikka talabgor internet ilovalari (masalan, online to`lov) uchun qo`llaniladi.

HTTPS barch a mashhur brauzerlar tomonidan dastaklanadi.

dasutrlashni o`rganamizmi?

INFORMATIKADAN YANGI TESTLAR

EXCELDA 6-DARS

Mavzu:            6-DARS. MS EXCELNING FUNKSIYALAR KUTUBXONASI

O’tkazish sanasi: __________________

Darsning maqsadi: Ta’limiy:    O’quvchilarga hujjatning ko‘rish holatlari; hujjatlarda rasmlar bilan  ishlashni o’rgatish. Rivojlantiruvchi:    O’quvchilarni mustaqil fikrlarini oshirish va rivojlantirish. Tarbiyaviy:          Vatanini sevish, milliy va  umuminsoniy qadriyatlarga hurmatda bo‘lish, odob-axloq qoidalariga rioya  qilishni singdirish
Kompetensiya TK: mediamanbalardan zarur ma’lumotlarni izlab topa olish saralash, qayta ishlash, saqlash, ulardan foydalana olish, ularning xavfsizligini ta’minlash, mediamadaniyatga ega bo‘lish. FOK: Aniq hisob-kitoblarga asoslangan holda shaxsiy, oilaviy, kasbiy va iqtisodiy rejalarni tuza olish.
Dars usuli suhbat, tushuntirish, “Savol-javob” metodi, “Rasmli boshqotirma” , “To‘g‘risini top”,”Yosh aktyor”o‘yinlari.
Dars turi Bilim va ko’nikmalarni nazorat qiluvchi va mustahkamlovchi.
O’quv jarayonining amaliga oshirish texnologiyasi O’qitish usullari:     blits-so’rov,  savol-javob. O’qitish shakllari:   guruhlara ishlash, frontal, jamoaviy. O’qitish vositalari:10-sinf darsligi, mavzuga oid dars taqdimoti, “Jajji bilimdon” jurnali. Monitoring va baholash:  og’zaki va test nazorati, amaliy vazifalar.
Ishlash bosqichlari vaqti Faoliyat mazmuni
O’qituvchi O’quvchilar
1-bosqich. Mavzuga kirish. (8-daqiqa) Darsni tashkillashtish.Uy vazifalarini tekshirish, savol-javob o’tkazish, natijalarni tahlil etish (5 daqiqa)O’quv mashg’ulotining mavzusi maqsadi, rejalashtirilgan natijasi va uni o’tkazish rejasini e’lon qiladi: Darsga tayyorlanadi.Vazifalarni bajaradi, savollarga javob beradi.Maqsad va rejani diqqat bilan tinglaydi yoki yozi oladi.
2-bosqich. Asosiy. (33 daqiqa) hujjatlarda rasmlar bilan  ishlashni o’rgatish, mavzuni mustahkamlash. (33 daqiqa) Vazifalarni bajaradi, tushunmagan joylarida savol beradi.
3-bosqich. Yakuniy. (4 daqiqa) O’quvchilar olgan bilimlari baholanadi. Uyga topshiriq va savollar beriladi.   Qo’shimcha savollarga javob beradi, topshiriqlarni bajaradi.Vazifalarni yozib oladi.

Asosiy tushunchalar:

Mavzuni yoritish.

Darsning borishi:

  1. Tashkiliy qism:

O’quvchilar bilan salomlashish

Xonani va o’quvchilarni darsga tayyorliklarini kuzatish

Yo’qlamani aniqlash

Navbatchi axboroti.

Siyosiy daqiqa.

  1. Darsning maqsad va vazifalarini qo’yish.
  2. Tayanch bilimlarning faollashtirish.

Uyga vazifalarini tekshirish va o’tilgan mavzuni mustahkamlash.

Mashq. O‘quvchilarning fanlardan olgan baholarini kitoblarningjadvallari yordamida hosil qilish.

Bajarish:

  • o‘quvchilarning fanlardan olgan baholarini kitob jadvalida bog‘lanish hosil qilisho‘yichao‘quchilarninguchunbaholarihar alohida ishchi kitoblarda hosil qilinadi (matematika, fizika, Informatika):

ushbu uchta jadvalni o‘quchilar baholarini aks ettiradigan alohida umumiy fanlar ishchi kitobda umumiy jadval hosil qilinadi:

  • alohida fan (umumiy fanlar jadvali fayli) kiritilgan ishchi kitob ochilib, baholar kiritilgan kataklar belgilanib nusxalanadi (Копировать). Umumiy ishchi kitobdagi mos fan kataklari belgilanib, Maxsus qo‘yish (Специальнвста) bo‘limi tanlanib,o‘yish ( Вставить bog‘la связь)tugmasi bosiladi.
  • Dars materiallarini tushuntirish (materiallarni tushuntirish dars prezentatsiyasi va videorolik, amaliy harakatlar, tayyor ishlar ko’rgazmasini namoyish qilish bilan  birgalikda olib boriladi).

Nazariy qism:

Excelda tayyorlanadigan ma’lumot to‘ldirishligini yuqorida aytib o‘tdik. Ba’zan katakla ustida ayrim hisoblashlarni bajari formulalardan foydalaniladi.

Buning uchun MS Excel 2010 tasmasidagi Формулыbo‘limiga murojaat qilinadi. Ushbu bo‘limda qiymatlar, ifodalar va kataklar ustida amallar bajarishga mo‘ljallangan funksiyalar kutubxonasi jamlangan. Kutubxonadagi turli vazifalarni bajarishga mo‘ljallangan funksiyalarning ba’zi birlari bilan tanishib chiqamiz:

Matematik funksiyalar

t/r Funksiya Vazifasi      
1. ФАКТР argument sifatida berilgan butun son faktorialini hisoblaydi 8. НОД   ikki  va  undan  ortiq  butun  sonlarning  eng  katta umumiy bo‘luvchisini hisoblaydi
             
2. ABS argument qiymatining modulini hisoblaydi 9. НОК   ikki va undan ortiq butun sonlarning eng kichik umumiy bo‘linuvchisini hisoblaydi
3. LN sonning natural logarifmini hisoblaydi 10. ОКРУГЛ   haqiqiy sonni yaxlitlaydi
4. EXP sonning eksponentasini hisoblaydi 11. СУММ   ikki va undan ortiq sonlarning yig‘indis hisoblaydi
5. SIN sonning sinusini hisoblaydi 12. ПРОИЗВ   Ikki va undan ortiq sonlar ko‘paytmasini hisoblaydi
6. COS sonning kosinusini hisoblaydi 13. ЗНАК   Son manfiy bo‘lsa -1 ni, musbat bo‘sa 1 ni, nol bo‘lsa 0 ni chiqaradi
7. TAN sonning tangensini hisoblaydi (radianda) 14. КОРЕНЬ   Sonni kvadrat ildizini hisoblaydi
  • Amaliy ish:

Mavzu yuzasida savol va topshiriqlar:

  1. СУММПРОИЗ funksiyasidan foydalanib (5;10), (15;20), (25;30)sonlar juftliklari ko‘paytmalarihisoblangyig‘indi.
  • Berilgan -99, -23. -6, 0, 10, 56, 77, 89, 123, 345, 678, 2345 sonlarning ichidan eng kat ko‘paytmasini hisoblang.
  • -7,8; -9,67865; -4,6; -3,8; 7,8 sonlarning ko‘paytmasini hisoblang va ОКРУГЛfunksiyasi yordamida 2 ta raqamgacha yaxlitlang.
  • Darsga yakun yasash:

O’quvchilarni olgan bilimlari hamda qilgan ishlarini nazorat qilib  baholash, ularni yo’l qo’ygan kamchiliklarini to’g’irlash.

  • Uyga vazifa berish:                                                

O’IBDO’:                                                    _________________________

DELPHIDA ILOVALAR

       Tuzilgan  ilovalar

  1. Yoshni  aytadigan  ilova
  2. Dollor  hisoblagich
  3. Hayoldagi  sonni  aytadigan  ilova
  4. Test  dasturi
  5. Zamonaviy  test  dasturi
  6. Shaxsiy  ma’lumotlarni  parollash
  7. Savol  javob  ilovasi

Yoshningizni  aytadigan  ilova

Hozir  necha  yoshdaligingizni  aytuvchi  ilova buning  uchun  2ta Label, Edit , Button  obyektlarni  joylaymiz. Label1 ni  nomini  Tug`ulgan  yilingizni  yozing  deb  nomlaymiz  uni  pasidan  Edit1 ni  joylashtirib  Text  xossasidagi  Edit1  o`chirib  qo’yamiz  Edit1 pasidan  Button1  joylaymiz  uni  Ok  deb  nomini  o`zgartiramiz  Label2 ni  nomini  o`chirib  tashlaymiz  Button1  ikki  marta  bosib  begin dan  oldin 

var  i,m,n,s:integer;

begin

m:=Strtoint(Edit1.Text);

s:=0; for i:=m to n do s:=2018-m;

Label2.Caption:=’Yoshingiz  ‘+Inttostr(s)+’ da’;

Endi  ilovani  saqlab  ishga  tushuramiz. Ilova  tayyor

           Dollor  hisoblagich

Dollor  hisoblagich  ilovasi  ham  yoshni  aniqladigan  ilovaga  o`xshatib  tuziladi  2ta  Label, Button, Edit objektlarni  joylab  Label1 ni  nomini  Dollor  sonni  yozing  deb nomlab  Edit1 Textni  o`chirib  Label2  ham  nomini  o`chirib  Button1 ni  Ok  nomiga  o`zgartirib  Button1ni  ikki  marta  bosib begin dan  oldin 

var  i,m,n,s:integer;

begin

m:=Strtoint(Edit1.Text);

s:=0; for i:=m to n do s:=8150*m;

Label2.Caption:=’Hozir  dollor  ‘+Inttostr(s)+’  so`m’;

Lekin  hozir  dollor  815000  so`m  bo’lgani  uchun 8150  deb  yozdim. Ilovani  saqlab  ishga tushuramiz

       Hayoldagi  o`ylagan  sonni

                aytadigan  ilova

bu  ilova  haqida   ilovaga  kirganda  aytadi  hohlagan  soningizni  o`ylang  0 dan  tashqari  deb  so`raydi  keyin  shu  sonni  shu  songa  qo`shing  deyadi  keyin  endi  nechani  ko`paytirmoqchisiz  deb  aytadi  siz  ko`paytirmoqchi  bo`lgan  sonni  yozasiz  keyin  birinchi  o`ylagan  songa  songa  bo`ling   deb  so`raydi  keyin  chiqqan  sonni  sizga  aytadi

Ilovani  bajarish: Buning  uchun  Label, Button, Edit  obyektlardan  foydalanamiz  Labelni  joylab  Hohlagan  sonni  o`ylang  0  dan  tashqari  deb  nomlaymiz  keyin  Button  ni  ham  joylab  O`yladim  deb  nomlaymiz  keyin  yana  Label ni   Label1  ni  ustiga   joylaymiz  uni  Endi  shu  songa  sh  sonni  qo’shing  deb  nomlab  yana  Button ni  Button1 ni  ustiga  joylaymiz  keyin yana  Label ni  Label2  ustiga  joylab  Ko’paytirmoqchi  bo’lgan  sonni  yozing  va  ko’paytiring  deb  nomini  o`zgartiramiz  keyin  Edit  obyektni  joylab  Text  o`chrib  Button ni  Button2  ustiga  joylab  ko’paytirdim  deb  nomlaymiz  keyin  yana  Label  ni  Label3 ni  ustiga  joylab  Endi  birinchi  o`ylagan  songa  bo`ling  deb  nomlab  Button  ni  Button3 ni  ustiga  joylab  bo`ldim  deb  nomlaymiz   va   yana  Label ni  Label4  ustiga  joylab  nomi  o`chirib  qo`yamiz   va  Button ni  Button4  ustiga  joylab  Boshidan  boshlash  deb  nomlaymiz  bo`ldi. Form1  ga  kodlarni  kiritamiz 

Label2.Visible:=False;

Button2.Visible:=False;

Label3.Visible:=False;

Button3.Visible:=False;

Label4.Visible:=False;

Button4.Visivle:=False;

Button5.Visible:=False;

Edit1.Visible:=False;

Label5.Caption:=’ ‘;

Endi  Button1 ni  ikki  marta  bosib 

Label1.Visible:=False;

Button1.Visible:=False;

Label2.Visible:=True;

Button2.Visible:=True;

Button2 ni  ikki  marta  bosib

Button2.Visible:=False;

Label2.Visible:=False;

Button3.Visible:=True;

Label3.Visible:=True;

Edit1.Visible:=True;

Button3 ga

Edit1.Visible:=False;

Label3.Visible:=False;

Button3.Visible:=False;

Button4.Visible:=True;

Label4.Visible:=True;

Button4 ga begin dan  oldin

var  i,m,n,s:integer;

begin

m:=Strtoint(Edit1.Text);

s:=0; for  i:=m to n do s:=m*2;

Label5.Caption:=’Javob ‘+Inttostr(s);

Label4.Visible:=False;

Button4.Visible:=False;

Button5.Visible:=True;

Button5 ga

Label5.Caption:=’ ‘ ;

Button5.Visible:=False;

Label1.Visible:=True;

Button1.Visible:=True;

Endi  ilovani  saqlab  ishga  tushuramiz

                Test  dasturi

Buning  uchun  Label, RadioButton, Button  obyektlardan  foydalanamiz  Label1 ga  savolni  yozamiz  va  4ta  RadioButton  javob  variantlari  vazifasini  o`taydi. Keyin  yana  Label  pasga  joylab  nomini  o`chirib  tashlaymiz  bu  javobni  xato  yoki  to`g`riligini  aytadi  Label1 ga  savolni  RadioButtonlarga  variantlarni  yozib  chiqamiz. endi  qaysi  variant  to`g`ri  javob  bo`lsa  o`shani  ikki  marta  bosib 

Label2.Caption:=’Javob  to`g`ri’;

RadioButton1.Enabled:=False;

RadioButton2.Enabled:=False;

RadioButton3.Enabled:=False;

RadioButton4.Enabled:=False;

Va  qolgan  3ta  xato  variantlarga

Label2.Caption:=’Javob  xato’;

RadioButton1.Enabled:=False;

RadioButton2.Enabled:=False;

RadioButton3.Enabled:=False;

RadioButton4.Enabled:=False;

Deb  yozib  chiqamiz  2 savol  hosil  qilamiz  1ta Label 4ta  RadioButton  va  Button  joylaymiz  Labelni  Label  ustiga  RadioButton ni RadioButtonlar  ustiga  joylaymiz  Label3 ga  savol  RadioButtonlarga  variantni  yozib chiqamiz Button  pasga  joylaymiz  va  nomini  keyingisi  deb  nomlaymiz    va  Form1ga

Label2.Caption:=’’;

Button1.Enabled:=False;

RadioButton1.Visible:=False;

RadioButton2.Visible:=False;

RadioButton3.Visible:=False;

RadioButton4.Visible:=False;

Kiritib  chiqamiz  va  keyin  javob  variantlarni  yozib  chiqamiz  tepadagi  holat  yana  takrorlanadi  test  savollarni  ko’p  qilib  tuzmoqchi  bo’lsangiz  yana  shu   holat  takrorlanadi

DELPHI NIMA?

So`z boshi.

Delphi — nima?

Ohirgi vaqtlarda dasturlashga bo`lgan qiziqish keskin ortdi. Bu ahborot-kommuhikasiya texnalogiyalarining o’sishi bilan uzviy bog’liqdir. Agar inson kompyuter bilan ishlar ekan, unda ertami kechmi dasturlashga qiziqish bazan zaruriyat tug’iladi.

Hozirgi vaqtda shaxsiy kompyuterdan foydalanuvchilar orasida Windows operatsion sistemasi ommaviylashgan. Ma’lumki, ular ushbu sistemada ishlovchi dasturlarni yaratishga harakat qilishadi.

Bir necha yil avval Windows muhitida ishlovchi dasturlarni yaratish bir qator dasturchilarning orzusi edi. Qayta ishlahning yagona muhiti Borland C++ for Windows bo’lgan va dasturchidan ko’pgina bilim va tajriba talab qilgan.

Hisoblash texnikasining jadal rivojlanishi dasturlarni qayta ishlashninh unumli muhitiga bo’lgan talab dasturlash sisytmalari (“tezkor dasturlash” deb ataluvchi)ni paydo bo’lishiga olib keldi. Ulardan Borland Delphi va Microsoft Visual Basic larni keltirish mumkin. Tezkor dasturlash sistemasi asosida (RAD-sistema, Rapid Application Development — ilovalarni tez dasturlash muhiti) vizual loyihalash va hodisaga bog’liq dasturlash yotib, uning farqi shundaki, dasturlash muhitidagi asosiy qismni o’ziga oladi, dasturchiga esa hodisalarni qayta ishlovchi funksiyalarni va muloqot oynalarni boshqarish qoladi.

Delphi – bu tezkor dasturlash muhiti bo’lib, uning dasturlash tili sifatida Delphi tili qo’llaniladi. Delphi tili – qat’iy tiplashtirilgan ob’ektli til bo’lib, uning asosida object Pascal yotadi.

Ayni vaqtlarda dastruchilar Delphi paketining navbatdagi versiyasi – Borland Delphi 7 Studio dan foydalnishlari mumkin. Avvalgi versiyasi singari Borland Delphi 7 Studio turli dasturlarni yaratish imkonini beradi: oddiy bir oynali dasturlardan tortib toki ma’lumotlar bazasini boshqaruvchi dasturlargacha. Ushbu paket tarkibiga ma’lumotlar bazasi bilan ishlashni ta’minlovchi, XML-hujjatlar bilan ishlovchi, ma’lumotlar sistemasini yaratuvchi va boshqa masalalarni yecha oluvchi utilitlar mujassamlashgan. Yetinchi versiyaning asosiy yutug’i  .NET texnologiyasini qo’llab-quvvatlaydi.

Borland Delphi 7 Studio Windows 98 dan toki Windows XP operatsion sistemalardi ishlay oladi. Kompyuterlarga qo’yiladigan talablar: 166 MGs taktli chastotadan kam bo’lmagan Pentium yoki Celeron tipidagi protsessor (Pentium II 400 MGs tavsiya etiladi), tezkor xotira – 128 Mbayt (256 MBayt tavsiya etiladi), diskdan yetarlicha bo’sh joy (Enterprise ning to’liq o’rnatilishi taxminan 457 MBayt ni egallaydi).

Delphini o’rnatish

Borland Delphi 7 Studio paketining to’rtta varianti mavjud: Personal, Professional, Enterprise va Architect. Bularning har biri turli vazifadagi dasturlarni yuqori unimda yaratishni ta’minlovchi standart to’plamlarga ega. Ushbu komplekt darajalari (Personal dan Architect gacha) qancha yuqori bo’lsa, dastruchiga yaratiladigan imkoniyat shuncha yuqori bo’ladi. Shunday qilib, Enterprise komplekti tashqi ma’lumotlar bazasi bilan ishlash imkoniyatini yaratadi (masalan, InterBase), Personal komplekti esa bunday imkoniyatga ega emas. Borland Delphi 7 Studio paketining tarkibi va imkoniyatlari haqidagi to’liqroq ma’lumotni www.borland.com/delphi saytidan olishingiz mumkin.

Delphi 7 paketini o’rnatish CD-ROM qurilmasi yordamida amalga оshiriladi. Kompakt diskda barcha o’rnatiluvchi initsializatsiya dasturlar va  kerakli fayllar jоylashgan. CD — diskоvоdga o’rnatuvchi diskni sоlishimiz bilan o’rnatiluvchi dastur avtоmatik tarzda ishga tushadi.

O’rnatuvchi dastur ishga tushishi natijasida kоmpyuter oynasida  Delphi 7 Setup launcher (Delphini o’rnatishni bоshlash) оynasi (B1-rasm) хоsil bo’ladi. bu оynada turli ma’lumоtlar va dasturni o’rnatish uchun tugmachalar jоylangan. Ular quyidagilar: Delphi 7, InterBase 6.5 ma’lumotlar bazasi serveri, InterBase 6.5 ma’lumotlar bazasining local serveri, Remote Debugger Server, ModelMaker utiliti va InstallShield Express — CD-ROM o’rnatuvchi disklarni yaratish uchun utilit.

Dasturni o’rnatish uchun sichqоncha ko’rsatkichini Delphi 7 satriga оlib kelib chap tugmachani bоsish kerak. Natijada Delphini o’rnatuvchi dastur ishga tushadi.

В1-rasm. Delphi 7 ni o’rnatishni boshlash

Delphi ni o’rnatish jarayoni juda oddiy. Seriya nomeri (Serial Number- 6AKD-PD29Q9-RDF?JQ-X65Z) va kalit (Authorization Key- QX8-EEC) kiritilganidan so’ng ekranda litsenziya kelishuvi oynasi paydo bo’ladi, keyin esa Setup Type oynasi chiqadi (B2 rasm). Bu oynada o’rnatishning uch xil varianti taklif etiladi va ulardan biri tanlanadi:

Typical (Odatdagi), Compact (Kichik imkoniyatli) yoki Custom (tanlash, foydalanuvchi tomonidan aniqlaniladi).

Odatdagi variantda Delphining barcha komponentlari qattiq diskka ko’chiriladi. Shuning uchun bu variantni o’rnatish diskdan anchagina bo’sh joy talab etadi. Agar diskda yetarli joy mavjud bo’lsa, shu variantni tanlash maqsadga muvofiqdir.

Kichik imkoniyatli variantda esa Delphining asosiy komponentlarigina ko’chirib o’tiladi. Bu variant diskda unchalik katta bo’lmagan joy egallaydi. Lekin Delphining  ayrim imkoniyatlaridan foydalanib bo’lmaydi. Bazan yordam sistemalarini, ayrim component, utilitlarni va keltirilgan misollarni diskka ko’chirmaydi.

Tanlash varianti dasturchi uchun o’ziga zarur bo’lgan uskuna va komponentlarni tanlash imkoniyatini beradi. Odatda bunday o’rnatish variantidan malakali dasturchilar foydalanadi. Bundan tashqari tanlash variantidan kompyuterda yetarli joy bo’lmagan holatlarda ham foydalanish mumkin.

В2-rasm. Setup Type muloqot oynasi

O’rnatish varianti tanlanib, Next tugmasi bosiladi. Agarda tanlash bo’limi tanlangan bo’lsa Custom Setup muloqot oynasi hosil bo’ladi (B3-rasm). Bu oynada o’rnatiluvchi komponentlarni belgilash mumkin. O’rnatilmaydigan kompopnentni belgilash uchun komponent nomining chap tomonidagi disk tasviri ustida sichqoncha tugmasini bosib, hosil bo’lgan menyudan Do Not Install buyrug’ini tanlash kerak.

ВЗ-rasm. Komponentni o’rnatishni bekor qilish oynasi

Agar Typical o’rnatish varianti tanlangan bo’lsa, Next tugmasi bosilishi natijasida Destination Folder muloqot oynasi hosil bo’ladi (B4-rasm). Bu oynada Delphi paketi  va komponentlarini o’rnatish uchun kataloglar ko’rsatilgan. Navbatdagi Next tugmasi bosilsa Save Installation Database oynasi hosil bo’ladi. Bu oyna foydalanuvchiga keyinchalik CD-ROM yordamisiz Delphini o’chirish imkoniyatini ta’minlovchi ma’lumotlarni diskka saqlashni taklif qiladi. Shuning bilan Delphini o’rnatishga tayyorgarlik tugaydi. Ekranda Ready to Install the Program oynasi paydo bo’ladi. Install tugmasini bosish bilan o’rnatish jarayoni boshlanadi.

O’rnatish jarayoni tugaganidan so’ng ekranda o’rnatish tugaganligi haqidagi oyna paydo bo’ladi (B5-rasm). Finish tugmasini bosiladi.

В5-rasm. O’rnatish jarayoni yakunlandi

Ishni boshlash

Delphi oddiy usul bilan ishga tushiriladi, ya’ni, Windows da Start (Пуск) menyusidan Programs (Программы) bo’limidagi Borland Delphi 7 satridan Delphi 7 buyrug’i tanlanadi (B6-rasm).

В6-rasm. Delphi ni ishga tushirish

Delphi ning ishchi muhiti beshta oynadan iborat (B7-rasm):

  • Bosh oyna — Delphi 7;
  • Bosh ishchi forma oynasi — Form 1;
  • Ob’yekt hususiyatlarini taxrirlash oynasi — Object Inspector;
  • Ob’yektlar ro’yxatini ko’rish oynasi — Object TreeView;
  • Kodlarni taxrirlash oynasi — Unitl.pas.

В7-rasm. Delphi ishchi muxiti

Bosh oynada (B8-rasm) buyruqlar menyusi, uskunalar paneli va komponentlar palitrasi joylashgan

Bosh ishchi forma (Form1) yaratiluvchi ilovaning bosh oynasi hisoblanadi.

Dasturlash ta’minoti ikkiga bo’linadi: sistemali va amaliy.

Sistemali dasturlash ta’minotini operatsion sistemani tashkil etadi. Qolgan dasturlar amaliy dasturlash ta’minoti hisoblanadi va qisqacha ilova deb ataladi.

В8-rasm. Bosh oyna

Object Inspector oynasi (B9-rasm) — ob’yektlarning xususiyatlarining qiymatlarini taxrirlash uchun mo’ljallangan.

vizual loyihalash atamalarida ob’yektlar — bu muloqot oynalari va boshqaruv elementlaridir (kiritish va chiqarish maydonlari, buyruq tugmalari va boshqalar).

Ob’yekt xususiyati — ob’yektning ko’rinishi va joylashishini aniqlovchi tavsiflardir. Masalan, Width va Height xususiyatlari formaning o’lchamlari (balandligi va kengligi)ni, Top va Left xususiyatlari formaning ekranda joylashgan o’rnini, caption esa sarlavha matnini beradi.

В9-rasm. Object Inspector oynasi

В10-rasm. Kodlarni taxrirlash oynasi

Kodlarni taxrirlash oynasida (B10-rasm) dastur matni yoziladi.

Birinchi loyixa

Delphi va vizual loyixalash texnologiyasining imkoniyatlarini namoyish qilish uchun kiritilgan tok kuchi va kuchlanishdan foydalanib quvvatni hisoblovchi ilovani yaratamiz. Dasturning ishchi oyna ko’rinishi B11-rasmda ko’rsatilgan.

В11-rasm. Quvvatni hisoblash dasturining oynasi

Ishni boshlash uchun Delphi ni ishga tushiring. Agar Delphida ishlayotgan bo’lsangiz va boshqa proyekt yuklangan bo’lsa, File (Файл) menyusidan New | Application (Создать | Приложение) buyrug’ini tanlang.

Forma

yangi proyekt ustida ishlash bosh ishchi formani yaratish bilan boshlanadi.

Bosh ishchi forma Form1 formasining xususiyatlarini o’zgartirish va formaga kerakli komponentlarni (matnlarni kiritish va chiqarish maydoni, buyruqlar tugmasi) qo’yish yo’li bilan yaratiladi.

Forma xususiyati (B1-jadval) uning tashqi ko’rinishini belgilaydi: o’lchami, ekranda joylashuvi, sarlavha matni.

Forma va uning komponentlari xususiyatlarini o’zgartirish hamda ko’rish uchun Object Inspector oynasidan foydalaniladi. Object Inspector oynasining yuqori qismida ayni vaqtda tanlangan ob’yektning nomi ko’rsatilgan. Properties (Свойства) bo’limining chap ustunida ob’yekt xususiyatining nomi, o’ng ustunida esa uning qiymatlari berilgan.

В1-jadval. Forma xususiyati

   
Xususiyat Izox
Name Forma nomi. Dasturda formaning nomi formani boshqarish va undagi komponentlarga murojaat qilish uchun ishlatiladi.
Caption Sarlavxa matni
Width Forma kengligi
Height Forma balandligi
Top ekranning yuqori chegarasidan Formaning yuqori chegarasigacha bo’lgan masofa
Left ekranning chap chegarasidan Formaning chap chegarasigacha bo’lgan masofa
BorderStyle Chegara ko’rinishi. Chegara O’zgaruvchan (bsSizeable),  O’zgarmas (bs Single) bo’lishi mumkin yoki chegara bo’lmasligi mumkin (bsNone). Agar o’zgaruvchan chegara bo’lsa, г holda dasturdan foydalanuvchi ish vaqtida forma oynasini sichqoncha yotdamida o’zgartirishi mumkin. O’zgarmas chegarada esa bunday o’zgartirish mumkin emas. Agar chegara bo’lmasa, u holda ishchi forma sarlavxasiz namoyon bo’ladi.
Borderlcons   Oynani boshqarish tugmalari. Bu xususiyat foydalanuvchi dasturdan foydalanayotganda unga oynaning qaysi boshqarish tugmalariga ruxsat bor yoki yo’qligini aniqlaydi. Xususiyat qiymati biSystemMenu, biMinimaze, biMaximaze va biHelp  xususiyatlarini yuklash bilan aniqlanadi. biSystemMenu xususiyati “Свернуть” tugmasi va sistema menyusi tumalariga ruxsatni aniqlaydi. biMinimaze—“Свернуть” tugmasi, biMaximaze—“Развернуть” tugmasi, biHelp — yordamchi ma’lumotlarni chiqarish tugmasi.
Icon Sistema menyularini hosil bo’lishidagi tugmalarni ifodalovchi muloqot oynasining sarlavxasidagi belgi.
Color   Fon rangi. Ranglarni ularning nomini ko’rsatish yoki operatsion sistemaning joriy ranglar sxemasiga bog’lash bilan berish mumkin.
Font Shrift. Ishchi formaga qo`yilgan komponentlar dastlabki holatda formaning Font xususiyatlarini o’ziga oladi. Formaning Font xususiyatini o’zgartirish, unga qo’yilgan komponentlarning ham Font xususiyatini avtomatik ravishda ozgartiradi. Ammo komponentlarga ham alohida Font xususiyatini berish mumkin.

Formani yaratishda birinchi navbatda uning caption (Sarlavxa) xususiyatini o’zgartirish lozim. Bizning misolimizda Form1 ni “Quvvatni hisoblash” ga o’zgartiramiz. Buning uchun Object Instpector oynasidan Caption satrini tanlanadi, natijada kursor hosil bo’ladi va “Quvvatni hisoblash” matni kiritiladi (В12-rasm).

Shu yo’sinda formaning balandligi va kengligini belgilovchi Height va Width xususiyatlarni ham o’zgartirish mumkin. Formaning o’lchovlari va uni ekranda joylashishi, shuningdek,boshqaruv elementlari va ularning forma sirtida joylashishi piksellarda beriladi. Height va Width xususiyatlarni mos ravishda 200 va 300 qilib o’zgartiramiz.

Forma — bu oddiy oyna. Shuning uchun uning o’lchamini boshqa ixtiyoriy oyna singari o’zgartirish mumkin.

В12-rasm. Xususiyat qiymatlarini o’zgartirish.

Dastur yuklangandan keyingi muloqot oynasining ekrandagi joylashishi uni yaratilayotgan paytdagi joylashishi bilan bir xil bo`ladi. Formaning ekranda joylashishi Top (ekranning yuqori chegarasidan qoldiriladigan masofa) va Left (ekranning chap chegarasidan qoldiriladigan masofa)hususiyatlarining qiymatlari bilan aniqlanadi. Shuningdek, bu hususiyatlarning qiymatini forma oynasini sichqon yordamida surish yoli bilan ham o’gartirsa bo’ladi.

Ba’zi hususiyatlarni tanlanganda, masalan, Borderstyle, hususiyatning joriy qiymati yonida ochiluvchi ro’yhatning belgisi paydo bo’ladi. Bunday hususiyatlarning qiymatini ro’yhatdan tanlash yoli bilan ham o’gartirsa bo’ladi (В13-rasm).

Bir qator hususiyatlar murakkab hisoblanadi. Ularning qiymati ichki hususiyatlar qiymatining to’plami bilan aniqlanadi. Ichki hususiyatlar  murakkab hususiyat nomining oldida turgan «+»  belgisini bosish yoli bilan ochiladi (В14-rasm). Masalan BorderIcons hususiyati dastur ishlagan vaqtda qanday boshqarish tugmalariga ruhsat borligini aniqlaydi. Agar  biMaximize ichiki hususiyatiga False qiymatini yuklansa, dastur ishlagan vaqtda Развернуть boshqarish tugmasi ko’rinmaydi.

В13-rasm. Hususiyat qiymatini ro’yhatdan tanlash yo’li bilan o’rnatish.

В14-rasm. BorderIcons murakkab hususiyati.

Ba’zi hususiyatlar tanlanganda, uning  qiymati yonida uch nuqta tasvirlangan buyruq tugmalari paydo bo’ladi. Bu esa hususiyat qiymatini berish uchun qo’shimcha muloqot oynasidan foydalanish mumkin ekanligini bildiradi. Masalan  Font murakkab hususiyatining qiymatini nafaqat ichki hususiyatlarni  o’zgartirish bilan aniqlasa bo’ladi, balki Windows muhitining standart shriftni tanlash muloqot oynasidan ham foydalansa bo’ladi. B2-jadvalda yaratilayotgan dasturda o’zgartirish zarur bo`lgan hususiyatlar sanab o’tilgan. Qolgan hususiyatlar o’zgartirishsiz qoldirilgan.

В2-Jadval. Ishchi forma hususiyatining qiymatlari

 Hususiyat  Qiymat
 Caption  Quvvatni hisoblash
 Height  200
 Width  300
 BorderStyle  bsSingle
 BorderIcons.biMinimize  False
 BorderIcons.biMaximize  False
 Font. Size  10

 Yuqoridagi jadvalda ba’zi hususiyatlarning nomidan keyin nuqta bor. Bu ichki hususiyatlarnining qiymatini ozgartirish kerak ekanligini bildiradi. Barcha o’zgartirishlardan keyin asosiy formaning ko’rinishi B15-rasmdagidek bo’ladi.

В15-rasm. Hususiyat qiymatlari o’rnatilgandan keyingi forma ko’rinishi.

Компоненты

Quvvatni hisoblash dasturi foydalanuvchidan boshlang’ich ma’lumotlarni olishi kerak — tok  kuchi va kuchlanish qiymatlari. Odatta da ma’lumotlar klaviatura yordamida taxrirlash maydoniga kiritiladi. Shuning uchun formaga taxrirlash maydoni — Edit komponentini qo’yish kerak.

Eng ko’p ishlatiladigan komponentlar Standart bo’limida joylashgan (B16-rasm).

Formaga komponent qo’shish uchun komponentlar to’plamidan kerakli komponentni tanlab (uning ustida sichqonning chap tugmasini bosib), formaning kerakli nuqtasiga kursorini olib borib, sichqonning yana chap tugmasini bosish kerak. Natijada tanlangan komponent  formada standart o’lchamda paydo bo’ladi.

В16-rasm. Standart  komponentlar to’plami.

Komponentning o’lchamini uni formaga qo’yish jarayonida ham bersa bo`ladi. Buning uchun komponent tanlangandan keyin, kursorni  formaga olib kelib, sichqonning chap tugmasini bosib, qo’yib yuborilmagan holatda kerakli o’lchamgacha kursorni olib borish kerak va sichqon tugmasini qo`yib yuborish kerak.

Har bir qo`yilgan komponenta uchun Delphi komponent nomidan va tartib raqamidan kelib chiqib yangi nom beradi.Masalan, agar formaga ikkita Edit komponentini qo`yilsa, u holda ularning nomi Edit1 va Edit2 bo’ladi. Dasturchi Name hususiyatining qiymatini o’zgartirib, komponent nomini o’zgartirishi mumkin. Oddiy dasturlarda komponent nomi muhim o’rin tutmaydi. Ammo katta dasturlarda komponent bajaradigan ishiga qarab nom berilgani ma’qul.

В17-rasmda Formaga boshlang’ich ma’lumotlarni kiritish uchun mo’ljallangan ikkita taxrirlash Edit komponenti qo’yilgandan keyingi holati ko’rsatilgan. Formadagi komponentlardan biri tanlangan. Tanlangan komponentning xususiyatlari Object Instpector oynasida ko’rsatilgan. Boshqa komponentning xususiyatlarini ko’rish uchun kerakli komponentning ustida sichqoncha tugmasini bosish kerak. Shuningdek, Object TreeView oynasida komponent nomini belgilash yoki Object Instpector oynasining yuqori qismidagi ochiluvchi ro’yxatdan belgilash bilan ham kerakli komponentni tanlash mumkin.

В17-rasm. Formaning Edit komponenti qo’yilgandan keyingi holati.

В3-jadvalda kiritish-taxrirlash komponenti Edit ning asosiy xususiyatlari keltirilgan.

ВЗ-jadval. Edit komponentining xususiyatlari

   
Xususiyat Izox
Name Komponentning nomi. Dasturda komponentga va uning xususiyatlariga murojaat qilish uchun foydalaniladi. Masalan, taxrirlash maydoniga kiritilgan matnga murojaat qilish.
Text Kiritish va taxrirlash maydonidagi matn.
Left Komponentning chap chegarasidan formaning chap chegarasigacha bo’lgan masofa.
Top Komponentning yuqori chegarasidan formaning yuqori chegarasigacha bo’lgan masofa.
Height Maydonning balandligi
Width Maydonning kengligi
Font Kiritiluvchi matn shrifti
ParentFont Komponent qo`yilgan formaning shrifti. Agar hususiyat qiymati True ga teng bo’lsa formaga o’rnatilgan shriftning hususiyatlarini o’ziga oladi.
   

Delphi komponentningh o’lchami va joylashuvini sichqoncha yordamida ham o’zgartirish imkoniyatini beradi. Buning uchun kerakli komponent ustida sichqonchaning chap tugmasini bosib, qo’yib yubormagan holatda kerakli nuqtaga siljitish kifoya. Komponentni siljitish vaqtida uning yuqori-chap burchagining (Left va Top xususiyat qiymatlari) joriy koordinatasi ko’rsatilib boriladi (B18-rasm).

В18-rasm. Komponentni Formadagi joylasuvini o’zgartirish

Komponent o’lchamini o’zgartirish uchun birinchi navbatda uni tanlab olish kerak. So’ngra sichqon ko’rsatkichini chegara belgilari(marker)dan biriga olib kelib chap tugmasini bosib turgan holatda komponent chegara holatlarini o’zgartirish kerak. Komponent o’lchamlarini o’zgartirish vaqtida uning Height va Width xususiyatlarining joriy qiymatlari ko’rsatilib boriladi. (В19-rasm).

В19-rasm. Komponentning o’lchamini o’zgartirish

Komponent xususiyatlarini forma xususiyatlari singari Object Inspector oynasidan ham o’zgartirish mumkin. Object Inspector oynasida komponentning xususiyati hosil bo’lishi uchun, formadan kerakli komponentni tanlash zarur. Kerakli komponentni Object Inspector oynasining ochiluvchi ob’yektlar ro’yxatidan (B20-rasm) yoki Object TreeView oynasidagi ro’yxatdan ham tanlash mumkin (B21-rasm).

В20-rasm. Object Inspector oynasidan komponentni tanlash

В21-rasm. Object TreeView oynasidan komponentni tanlash

B4-jadvalda Edit1 va Edit2 taxrirlash maydonlarining xususiyat qiymatlari keltirilgan. Edit1 komponenti tok kuchini, Edit2 esa kuchlanishni kiritish uchun mo’ljallangan.

В4-jadval. Edit komponentining xususiyatlari

     
Xususiyat Komponent
Edit1 Edit2
Text 0 0
Тор 56 88
Left 128 128
Height 21 21
Width 121 121
     

Taxrirlash maydonining yonida bu kiritish maydonining vazifasi haqida qisqacha ma’lumot berilishi kerak. Formada matnni hosil qilish uchun matn hosil qiluvchi maydondan foydalaniladi. Bunday maydon sifatida Label komponentidan foydalaniladi.

Label komponentining belgisi Standart komponentlar to’plami bo’limida joylashgan (B22-rasm). Label komponenti formaga huddi Edit komponenti kabi qo’shiladi.

В22-rasm. Label komponenti — matnni chiqarish maydoni.

Yaratilayotgan dasturning ishchi formasiga to’rtta Label komponenti qo’yish kerak. Birinchi Label foydalanuvchi nima ish qilishi kerakligini ko`rsatuvchi habar chiqaradi, ikkinchi ba uchinchilari esa kiritish maydonlarining vazifasini ko’rsatadi, to’rtinchi maydon hisoblash natijasini chiqarish uchun mo’ljallangan.

Label komponentining hususiyatlari В5-jadvalda ko’rsatilgan.

В5-jadval. Label komponentining hususiyatlari (matnni chiqarish maydoni)

Hususiyat Izox
Name Komponentaning ismi. Dasturda komponentaga va uning hususiyatlariga murojaat etish uchun foydalaniladi
Caption Formaga chiquvchi matn
Font Formaga chiquvchi matnning shrifti
ParentFont Komponent qo`yilgan formaning shrifti. Agar hususiyat qiymati True ga teng bo’lsa formaga o’rnatilgan shriftning hususiyatlarini o’ziga oladi.
AutoSize Maydon o’lchami maydonga yozilgan matnga qarab belgianadi.
Left Komponentning chap chegarasidan formaning chap chegarasigacha bo’lgan masofa.
Top Komponentning yuqori chegarasidan formaning yuqori chegarasigacha bo’lgan masofa.
Height Maydonning balandligi
Width Maydonning kengligi
Wordwrap Joriy satrga sig’magan so’z avtomatik tarzda keyingi satrga o’tadi.
   

Autosize va Wordwrap hususiyatlariga e’tibor bering. Bu hususiyatlarni chiqarilayotgan matn bir necha satr bo’lganda ishlatiladi. Formaga Label komponentini qo’shganda AutoSize hususiyatining qiymati dastlab true holatida bo’ladi. Ya’ni, caption xususiyat qiymatining o’zgarishi jarayonida maydonning o’llchamlari avtomatik tarzda aniqlanadi. Agar kiritilayotgan matn bir necha satrdan iborat qilib qo’ymoqchi bo’lsak, u holda Formaga Label komponentini qo’shilganidan so’ng Autosize xususiyat qiymatini False, Wordwrap xususiyatining qiymatini True ga o’zgartirish kerak. Undan keyin width va Height xususiyatlariga kerakli qiymatlarni o’rnatish kerak. Shundan so’nggina caption xususiyatiga maydonda hosil bo’luvchi matnni kiritish mumkin.

To’rtta Label componentini formaga qo’shib, ularning xususiyat qiymatlari b6-jadvalda ko’rsatilganiday o’rnatilganidan keyin formaning ko’rinishi b23-rasmdagidek ko’rinishni oladi.

В23-rasm. Formaga matnni chiqaruvchi maydonlar qo’shilgandan keyingi ko’rinish

В6-jadval. Label1, Label2, Label3 va Label4 komponentlari xususiyatlarining qiymatlari

Komponent Xususiyat Qiymat
Labell             AutoSize False
Wordwrap True
Caption Tok kuchi va kuchlanishni kiriting
Top 8
Left 24
Height 26
Width 170
Label2     Top 50
Left 24
Caption Tok kuchi I=
Label3     Top 90
Left 16
Caption Kuchlanish U=
Label4     AutoSize False
Wordwrap True
Top 115
Left 16
Height 46
Width 100
         

Formani yaratish jarayonida so’ngi bajariladigan ish formaga ikkita buyruq tugmalarini qo’shishdan iborat:Hisobla va Yakunlash.

Buyruq tugmasi-Button komponenti formga huddi boshqa komponentlar kabi qo’yiladi. Button komponentining belgisi Standart komponentlar to’plami bo’limida joylashqan (B24-rasm).

В7-jadvalda komponent hususiyatlari ko’rsatilgan.

В24-rasm. Button komponenti

В7-Jadval. Button komponentining hususiyatlari

Hususiyat Izox
Name Komponentning nomi. Dasturda komponent va uning hususiyatlariga murojaat etish uchun ishlatiladi.
Caption Tugmadagi matn
Enabled Tugmaga ruhsat bor yoki yo’qligini belgilash. Agar hususiyat qiymati True ga teng bo’lsa, tugmaga ruhsat bor, va aksincha False bo’lsa ruhsat yo’q bo’ladi.
Left Komponentning chap chegarasidan formaning chap chegarasigacha bo’lgan masofa.
Top Komponentning yuqori chegarasidan formaning yuqori chegarasigacha bo’lgan masofa.
Height Tugmaning balandligi
Width Tugmaning kengligi
   

Formaga ikkita buyruq tugmalarini qo’ygandan keyin ularning xususiyat qiymatlarini b8-jadvaldagidek o’rnatish kerak.

В8-Jadval. Button1 va Button2 komponentlarning xususiyat qiymatlari

Свойство Компонент
Button1 Button2
Caption Hisobla Yakunlash
Тор 40 75
Left 160 160
Height 25 25
Width 75 75
     

Yaratilayotgan ilovaning yakuniy ko’rinishi В25-rasmda ko’rsatilganidek bo’ladi.

В25-rasm. Quvvatni hisoblash dasturining forma ko’rinishi

Ilova formasini yaratish tugatilganidan so’ng, dastur matnini yozishga kirishish lozim. Lekin, bundan avval Windowsda dasturlashdagi zaruriy tushunchani muhokama qilib olishimiz kerak:

  • hodisa;
  • hodisani qayta ishlash protsedurasi.

Hodisa va Hodisani qayta ishlash protsedurasi

Yaratilgan formaning ko’rinishi ilova qanday ishlashini ko’rsatadi. Ma’lumki, foydalanuvchi taxrirlash maydoniga boshlang’ich ma’lumotlarni kiritishi va Hisobla tugmasi ustida sichqoncha tugmasini bosishi kerak. Buyruq tugmasi ustida sichqon tugmasining bosilishi Windows muhitida Hodisa deb ataladi.

Hodisa (Event) — dastur ishlagan vaqtda sodir bo’ladi. Delphida har bir hodisaga nom berilgan. Masalan, sichqon tugmasining bosilishi — OnClick hodisasi, ikki marta tez bosilishi esa OnDblClick hodisasidir.

В9-jadvalda Windowsning bir qator hodisalari keltirilgan.

В9-Jadval. Hodisa

Hodisa Sodir bo’lishi
OnClick Sichqoncha tugmasining bosilishi
OnDblClick Sichqoncha tugmasining ikki marta tez bosilishi
OnMouseDown Sichqoncha tugmasi bosilganda
OnMouseUp Sichqoncha tugmasi qo’yib yuborilganda
OnMouseMove Sichqoncha ko’rsatkichi harakatlanganda
OnKeyPress Klaviatura tugmasi bosilganda
OnKeyDown Klaviatura tugmasi bosilganda. OnKeyDown va OnKeyPress hodisalari klaviaturaning bosilgan tugmasi qo’yib yuborilguncha takrorlanuvchi hodisalardir.
OnKeyUp Klaviaturaning bosilgan tugmasi qo’yib yuborilganda
OnCreate Ob’yekt yaratilganda (formalar, boshqarish elementlari). Ushbu hodisani qayta ishlash protsedurasi odatda o’zgaruvchilarning qiymatlarini yuklashda ishlatiladi.
OnPaint Dastur ishi boshlanishi bilan ekranda oynaning paydo bo’lishida
OnEnter Boshqaruv elementi fokusni o’ziga olganda
OnExit Boshqaruv elementi fokusni yo’qotganda
   

Delphi da hodisa sodir bo’lishiga hodisani qayta ishlash protsedurasi sifatida qaraladi. Shunday qilib foydalanuvchi qilgan harakatga javoban dastur qandaydir ish bajarishi uchun, dasturchi hodisani qayta ishlash protsedurasini yozishi kerak.

Hodisani qayta ishlash protsedurasini yaratish uslubini Hisobla buyruqtugmasi uchun OnClick hodisasini qayta ishlash protsedurasi misolida ko’rib o’tamiz.

Hodisani qayta ishlash protsedurasini yaratish uchun, dastlab  Object Inspector oynasida protsedura yaratilayotgan komponentni tanlash kerak. So’ngra shu oynaning o’zida Events(Hodisa)bo’limini tanlash kerak.

 В26-rasm. Events bo’limi

Events bo’limining chap ustunida (В26-rasm) tanlangan komponent hodisalarining nomi keltirilgan. Agar hodisaga avval protsedura yozilgan bo’lsa, u holda hodisa nomining yonidagi o’ng ustunda ushbu protseduraning nomi bo’ladi.

Hodisani qayta ishlash protsedurasini yaratish uchun, kerakli hodisa yonidagi maydonda sichqonchani ikki marta tez bosish kerak (buyruq tugmasi ustida sichqon tugmasini ikki marta tez bosish bilan OnClick hodisasini qayta ishlash protsedurasini yaratish mumkin). Natijada hodisani qayta ishlash protsedurasi shabloni qo’shilgan kodlarni taxrirlash oynasi ochiladi, Object Instpector oynasida esa hodisa nomining qatorida uni qayta ishlash funksiyasining nomi paydo bo’ladi (B27-rasm).

Delphi hodisani qayta ishlash funksiyasiga ikki qismdan iborat bo’lgan nom beradi. Nomning birinchi qismi hodisani qayta ishlash uchun yaratilgan, ob’yekt (komponent) joylashgan formani ifodalaydi. Ikkinchi qismi esa o’sha ob’yekt va hodisani ifodalaydi.

Bizning misolimizda formaning nomi — Form1, buyruq tugmasining nomi — Button1, hodisaning nomi esa — Click.

В27-rasm. Hodisani qayta ishlash protsedurasining shabloni.

Kodlarni taxrirlash oynasidagi begin va end so’zlari orasiga hodisani qayta ishlash protsedurasi yoziladi.

B1

В окне редактора кода между словами begin и end можно печатать инструкции, реализующие функцию обработки события.

В1-listingda Hisobla buyruq tugmasi uchun onclick hodisani qayta ishlash protsedurasining dastur matni keltirilgan.

В1-listing.

// Hisobla tugmasini bosish

procedure TForm1.Button1Click(Sender: TObject);

 var  //O’zgaruvchilarni e’lon qilish

   I:Real;// Tok kuchi

   U:Real;// Kuchlanish

   P:Real;// Quvvat

begin

   // kiritish maydonlaridan qiymatlarni o’qish

  I:=StrToFloat(Edit1.Text);

  U:=StrToFloat(Edit2.Text);

   // Quvvatni hisoblash

  P:=I*U;

   // Natijani chiqarish

  Label4.Caption:=’Tok kuchi — ‘+Edit1.Text+’ A’+#13

  +’Kuchlanish — ‘+Edit2.Text+’ V’+#13

  +’Quvvat — ‘+FloatToStr(P)+’ Wt’;

end;

Button1click protsedurasi quvvatni hisoblaydi va  natijani Label4 maydoniga chiqaradi. Boshlang’ich ma’lumotlar Edit1 va Edit2 taxrirlash maydonlaridan Text hususiyatiga murojaat qilib o’qib olinadi. Text hususiyati dastur ishlagan vaqtda foydalanuvchi kiritgan satr belgilardan tashkil topgan. Dastur to’g’ri ishlashi uchun qator faqat raqamlarda tashkil topgan bo’lishi kerak. Dasturda satrni raqamga aylantirish uchun StrToInt yoki StrToFloat funksiyalaridan foydalaniladi. Bizning misolda Edit1 maydonidagi satrni StrToFloat funksiyasi yordamida raqamga aylantirib I o’zgaruvchisiga o’zlashtiramiz [I:=StrToFloat(Edit1.Text)]; (:= — o’zlashtirish operatori).  Huddi shunday usul bilan Edit2 maydonidagi satrni U  o’zgaruvchisiga o’qib olamiz [U:=StrToFloat(Edit2.Text)].

O’zgaruvchilar o’qib olingandan keyin hisoblash amalga oshiriladi [P:=I*U]. So’ngra natijani Label4 maydonining Caption hususiyat qiymatiga yuklanadi. Raqamni satrga aylantirish uchun IntToStr yoki FloatToStr funksiyalridan foydalanamiz. Yakunlash tugmasini bosish natijasida dastur ishini yakunlash kerak. Buning uchun Dasturning bosh ishchi oynasini yopish kifoya. Oynani yopish uchun Close usulubidan foydalanamiz. Yakunlash tugmasi uchun OnClick hodisasini qayta ishlash protsedurasi B2-listingda keltirilgan.

В2-listing.

  // Yakunlash tugmasini bosish

procedure TForm1.Button2Click(Sender: TObject);

begin

Form1.Close;//Dasturning bosh ishchi oynasini yopish

end

Kodni taxrirlash oynasi

Kodni taxrirlash oynasi dasturlash tilining kalit so’zlarini (procedure, var, begin, end, if va boshqa) dasturlash oson bo’lishi uchun yo’g’on shrift bilan ajratadi. Dasturga izoxlar esa qiyshaytirilgan  shrift bilan ajratiladi.

Dasturni yaratish jarayonida tez-tez taxrirlash oynasidan formga va aksincha formdan taxrirlash oynasiga o’tish zaruriyati paydo bo’ladi. Buning uchun View uskunalar panelida joylashgan Toglle Form/Unit buyruq tugmasidan ( B28-rasm) yoki <F12> klaviatura tugmachasidan  foydalanish mumkin. Huddi shu uskunalar panelida View Unit (kerakli modulni tanlash)va View Form (kerakli formani tanlash) buyruq tugmalari joylashgan. Bu tugmalar dastur bir nechta modul yoki formadan tashkil topgan bo’lsa ishlatiladi.

В28-rasm. View uskunalar paneli

Yordamchi ma’lumotlar tizimi

Dasturning matnini terish jarayonida kodlarni tahrirlash oynasi protsedura va funksiyalarning parametrlari, hamda ob’yektning hususiyat va uslublari haqida yordamchi ma’lumotlarni chiqaradi.

Masalan kodni taxrirlash oynasiga MessageDlg (ekranga habar chiqarish funksiyasi) terib, qavs ochilsa, u holda ekranda MessageDlg funksiyasining parametrlarini ko’rsatuvchi yordamchi ma’lumot paydo bo’ladi (29-rasm).

 В29-rasm.

Parametrlaridan biri yo’g’on shriftda belgilangan. Shu yo’l bilan taxrirlash oynasi dasturchiga qaysi parametrni kiritishi kerakligini ko’rsatadi. Parametrni terib, vergul qo’ygandan keyin navbatdagi parametr belgilanadi.

Ob’yektlar uchun taxrirlash oynasi hususiyatlar va uslublar ro’yhatini chiqaradi. Dasturchi ob’yekt nomini terib nuqta qo’yishi bilan, ekranda yordamchi ma’lumotlar oynasi paydo bo’ladi (B30-rasm). Ro’yhatning kerakli elementiga o’tish uchun klaviaturaning ko’rsatkich tugmalaridan foydalanish mumkin yoki klaviaturada kerakli uslub yoki hususiyat nomining bir nechta boshlang’ich xarfini terish kerak. Ro’yhatdan kerakli elementni tanlab <Enter> tugmachasi bosilgandan keyin, tanlangan hususiyat yoki uslub dastur matniga qo`yiladi.

В30-rasm. Ob’yektning ( komponent) hususiyat va uslublar ro’xati.

Agar dastur terish davomida yordamchi ma’lumot paydo bo’lmasa dasturchi xatolikka yo’l qo’yganligini  bildiradi: ko’proq, protsedura yoki funksiya nomi noto’g’ri terilganda.

Kod yonaltiruvchi

Kodlarni taxrirlash oynasi ikki qismga bo’lingan (B31-rasm). O’ng qismida dasturning matni joylashgan. Chap qismi, kod yo’naltiruvchi deb nomlanib (Code Explorer), dastur matni bo’ylab xarakatlanishni yengillashtiradi.

Agar yo’naltiruvchi oyna yo’q bo’lsa, uni ochish uchun View menyusidan Code Explorer buyrug’ini tanlash kerak.

B31-rasm.

Kod andozalari

Dastur matnini terish davomida kod andozalaridan foydalanish juda qulay. Masalan Case uchun andoza quyidagicha bo’ladi:

case of :;

:;

else ;

end;

Taxrirlash oynasi dasturchiga juda katta andozalar to’plamini taklif qiladi: massiv, sinf, funksiya va protseduralarni e’lon qilish; shart (if, case) hamda takrorlanuvchi (for, while) operatorlar. Ba’zi operatorlar uchun, misol uchun If va While operatorlari uchun bir qator andozalar varianti mavjud.

Dastur matnini terish davomida andozalardan foydalanish uchun klaviaturadan <Ctrl>+<J> tugmachalarini birgalikda bosish kerak (B32-rasm).  Ochilgan ro’yhatdan kerakli andozani tanlash mumkin.

В32-rasm.

Yordam sistemasi

Dastur terish davomida funksiya yoki operator haqida ma’lumot olish uchun kodni taxrirlash oynasida kerakli protsedura, funksiya yoki operatorni terib, shu so’z ustida <F1> tugmachasini bosish kerak.

Yordamchi ma’lumotni Help  menyusidan Delphi Help buyrug’ini tanlab ishga tushirish mumkin (B35-rasm). Natijada ekranda standart yordam tizimi oynasi paydo bo’ladi.

 В35-rasm.

Proektning tuzilishi.

Delphi proyekti dastur birliklari — modullardan tashkil topadi. Ulardan biri bosh modul bo’lib, dastur ishining boshlanishi ana shu moduldan boshlanadi. Ilovaning bosh moduli delphi tomonidan yaratib boriladi.

Bosh modulning fayl kengaytmasi .dpr bo’ladi. Ilovaning bosh moduli matnini ko’rish uchun Project menyusidan View Source buyrug’ini tanlash kerak.

ВЗ-listingda quvvatni hisoblash dasturi bosh modulining matni keltirilgan.

ВЗ-Listing. Quvvatni hisoblash ilovasining bosh moduli:

program quvvat;

uses

  Forms,

  Unit1 in ‘Unit1.pas’ {Form1};

{$R *.res}

begin

  Application.Initialize;

  Application.CreateForm(TForm1, Form1);

  Application.Run;

end.

Bosh modul program so’zi bilan boshlanib, uning qatorida dastur nomi yoziladi. Proyekt nomi uni diskka saqlash vaqtida beriladi. Undan so’ng Uses so’zidan keyin foydalaniluvchi modullar ro’yxati keladi: Forms Delphining standart moduli va Unit1.pas forma moduli.

Izoxga o’xshash {$R *.RES} satri bu resurs fayllarni proyektga qo’shuvchi direktivadir. Resurs fayylar ilovaning resurslarini o’zida saqlaydi:piktogramma, kursorlar, bitli tasvirlar va boshqalar. Yulduzcha (*)  resurs faylining nomi proyekt faylining nomi bilan bir xil, lekin fayl kengaytmasi .res ekanligini ko’rsatadi.

Resurs fayl matnli fayl bo’lmaganligi uchun uni matnlarni tahrirlovchi dastur yordamida tahrirlab bo’lmaydi. Bunday fayllarni tahrirlash uchun maxsus dasturlardan foydalaniladi, masalan, Resource Workshop. Shuningdek Delphining utiliti bolgan Image Editor dan ham foydalanish mumkin. Image Editor utilitini Tools menyusidan ishga tushirish mumkin.

Bosh modulning bajariluvchi qismi begin va end operatorlari orasida joylashadi. Bajariluvchi qism operatorlari ilovaning yuklanishi va bosh ishchi oynani ekranga chiqishini ta’minlaydi.

har bir dastur bosh moduldan tashqari hech bo’lmaganda bitta forma modulini o’ziga qo’shadi. Bu forma moduli ilova bosh ishchi formasining berilishi va uning ishini qo’llovchi protseduradan tashkil topgan bo’ladi. Delphida har forma o’z moduliga ega bo’ladi.

В4-listingda quvvatni hisoblash dasturi modulining matni berilgan.

В4-listing.

unit Unit1;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls;

type

  TForm1 = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Button1: TButton;

    Button2: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form1: TForm1;

implementation

{$R *.dfm}

 // Hisobla tugmasini bosish

procedure TForm1.Button1Click(Sender: TObject);

 var  //O’zgaruvchilarni e’lon qilish

   I:Real;// Tok kuchi

   U:Real;// Kuchlanish

   P:Real;// Quvvat

begin

   // kiritish maydonlaridan qiymatlarni o’qish

  I:=StrToFloat(Edit1.Text);

  U:=StrToFloat(Edit2.Text);

   // Quvvatni hisoblash

  P:=I*U;

   // Natijani chiqarish

  Label4.Caption:=’Tok kuchi — ‘+Edit1.Text+’ A’+#13

  +’Kuchlanish — ‘+Edit2.Text+’ V’+#13

  +’Quvvat — ‘+FloatToStr(P)+’ Wt’;

end;

  // Yakunlash tugmasini bosish

procedure TForm1.Button2Click(Sender: TObject);

begin

Form1.Close;//Dasturning bosh ishchi oynasini yopish

end;

end.

Modul Unit so’zidan boshlanadi. Undan keyin modulning nomi keladi. Aynan shu nom bosh modulning uses bo’limida e’lon qilingan bo’ladi.

Proyektni saqlash.

Proyekt, bu kompilyator ishchi dastur faylni (EXE-fayl) yaratayotgan paytda  foydalanuvchi fayllar to’plamidir. Eng sodda holatda proyekt quyidagi fayllardan tashkil topgan bo’ladi:

  • proyektning tarkibi haqidagi fayl (DOF-fayl);
  • bosh modulning fayli (DPR-fayl);
  • resurs fayli (RES-fayl);
  • formaning tarkibi haqidagi fayl (DFM-fayl);
  • dasturning asosiy kodi joylashgan forma modulining fayli (PAS-fayl);
  • konfiguratsiya fayli (CFG-fayl).

Proyektni saqlash uchun File menyusidan Save Project As buyru’ini tanlash kerak. Agar proyekt avval bir marta ham saqlanmagan bo’lsa, u holda Delphi dastlab proyektdagi boshqa  modullarni saqlashni taklif qiladi, shuning uchun ekranda Save Unit1 As  oynasi ochiladi. Bu oynada (B36-rasm) proyekt fayllarini saqlash uchun mo’ljallangan papkani ochib, modulning nomini kiritish kerak. Save (Сохранить) tugmasi bosilgandan keyin proyektni saqlash oynasi ochiladi va bu oynaga (B37-rasm) proyekt nomini kiritish kerak.

В36-rasm. Forma modulini saqlash.

В37-rasm. Proyektni saqlash

Modul (pas-fayl) va proyekt (dpr-fayl) fayllarining nomi har xil bo’lishi kerakligiga e’tibor bering. Proyektga qanday nom berilsa kompilyatsi natijasida shu nom bilan EXE-fayl hosil bo’ladi va bu fayl proyekt saqlangan papkada joylashadi. Modullar nomi forma bajaradigan ishiga qarab berilgani maqsadga muvofiq bo’ladi.

Eslatma

Har bir proyektni alohida papkaga saqlash maqsadga muvofiq bo’ladi, chunki ikkita proyektda bir xil nomli modul fayli bo’lishi mumkin.

Kompilyatsiya

Kompilyatsiya bu dastur matnini bajariluvchi (EXE) faylga aylantirish jarayonidir. Kompilyatsiya jarayoni ikki bosqichdan iborat. Birinchi bosqichda dastur matnidagi xatoliklar tekshiriladi, ikkinchi bosqichda esa bajariluvchi (EXE) faylga aylantiriladi.

Dasturni kompilyatsiya qilish uchun Project menyusidan Compile buyrug’ini tanlash kerak (B38-rasm). Kompilyatsiya natijasi Compiling muloqot oynasida ko’rinadi (B39-rasm). Bu oynada kompilyator xatoliklar (Errors), ogoxlantirishlar (Warnings) va yordamchi so’zlarning (Hints) soni chiqaradi. Xatoliklar, ogoxlantirishlar va yordamchi so’zlarning o’zi haqidagi xabarlar esa taxrirlash oynasining pastki qismida ko’rsatiladi (B40-rasm).

В38-rasm.

B39-rasm.

.

В40-rasm.

Eslatma

Agar kompilyatsiya vaqtida  Compiling muloqot oynasi ekranda ko’rinmasa Tools menyusidan Environment options buyrug’ini tanlang va ochilgan oynaning Preferences bo’limidagi Show compiler progress qatorini yoqib qo’ying.

Xatoliklar

Kompilyator dastur matnida sintaktik xatolik bo’lmagan taqdirdagina o’z ishini davom ettiradi. Ko’pchilik xollarda yangi terilgan dasturda xatoliklar mavjud bo’ladi. Dasturchi ularni to’g’rilash kerak.

Xatolik mavjud bo’lgan dastur qismiga o’tish uchun, xatolik haqida habar chiqargan qatorda sichqon tugmasini ikki marta tez bosish kerak yoki shu qatorda shichqonning o’ng tugmasini bosib hosil bo’lgan menyuda Edit source buyrug’ini tanlash kerak (B40-rasm).

Xatoliklarni to’g’rilash jarayoni davomiylik xarakteriga ega. Odatda dastlab aniq ko’rinib turuvchi xatoliklar tuzatiladi, masalan, e’lon qilinmagan o’zgaruvchi haqida ma’lumot beradi. Dastur matnida o’zgartirishlar amalga oshirilganidan so’ng kompilyatsiya qaytadan bajariladi. Ba’zan kompiilyator xatolik yuz bergan qatorni to’g’ri ko’rsatmaydi, mavjud xatolik undan avvalgi satrlarda bo’lishi ham mumkin.

В40-rasm. Xatolik qatoriga o’tish.

Eng ko’p xatolik operatordan so’ng nuqtali vergul qo’yilmaganligi haqida chiqariladi:

  • Missing operator or semicolon (operator yoki nuqtali vergul yo’q)

Ogohlantirish va yordamchi so’zlar

Dasturda xatolik bo’lmagan noaniqliklar topilsa, kompilyator yordamchi so’zlar (Hints) va ogoxlantirishlar (Warnings) chiqaradi.

Masalan, eng ko’p chiqariladigan yordamchi so’z  e’lon qilingan, ammo ishlatilmayotgan o’zgaruvchi haqida bo`ladi:

Variable … is declared but never used in … Haqiqatda o’zgaruvchini e’lon qilib, undan foydalanmaslik nima uchun kerak?

Dasturni ishlatish

Dasturni ishlashini tekshirish uchun, uni delphi muhitida yaratish davomida ham ishga tushirish mumkin. Buning uchun Run menyusidan Run buyrug’ini tanlash kerak yoki Debug uskunalar panelidan mos tugmani bosish kerak (B41-rasm). Bundan tashqari <F9> tugmasini bosib ham yuklash mumkin.

В41-rasm.

Ishlash vaqtidagi xatoliklar

Dastur ishlayotgan vaqtda ham xatoliklar yuz berishi mumkin. Bunday xatoliklarni ishlash vaqtidagi xatoliklar (run-time errors) deb yuritiladi. Ko’p xollarda boshlang’ich ma’lumotlarni to’g’ri kiritmaslik natijasida bunday xatoliklar sodir bo’ladi. Masalan quvvatni hisoblash dasturida tok kuchi yoki kuchlanishning qiymatini kiritayotganda raqam o’rniga harf kiritib, Hisobla tugmasini bosilsa ekranda xatolik haqida xabar chiqadi (B42-rasm). Bu xatolik quyidagi qatorda sodir bo’ladi:

I:=StrToFloat(Edit1.Text);

В42rasm.

OK tugmasini bosgandan keyin, dasturchi ishini davom ettirishi mumkin. Buning uchun Run menyusidan Step Over yoki Run buyrug’ini tanlash kerak. Oxirgi holatda shu menyudan Program Reset buyrug’ini tanlash kerak.

Dasturni tuzish davomida dasturchi foydalanuvchi tomonidan yo’l qo’yilishi mumkin bo’lgan barcha xatoliklarni hisobga olishi kerak va bu xatoliklardan ximoya qilishi kerak. Masalan bizning misolda foydalanuvchi Edit maydonlariga faqat raqam kirita oladigan qilib qo’yish mumkin. B5-listingda quvvatni hisoblaydigan dasturni xatoliklardan himoya qilingan xolatda berilgan.

O’zgartirish kiritish

Quvvatni hisoblash dasturini bir necha marta ishlatgandan keyin o’zgartirish kiritish extiyoji paydo bo’ldi. Masalan Tok kuchini kiritgandan keyin <Enter> tugmasini bosilganda kursor Kuchlanishni kiritish maydoniga o’tib qolsa yomon bo’lmasdi. Shuningdek foydalanuvchi Tok kuchi va Kuchlanish maydonlariga faqat raqamlarni kirita olsin.

Dasturga oz’gartirish kiritish uchun Delphini yuklab, mos proyektni ochish kerak. Buning uchun File menyusidan Open Project buyrug’ini tanlash kerak yoki shu menyuning Reopen bo’limidan ham foydalansa bo’ladi. Reopen bo’limida dasturchi so’ngi vaqtlarda ishlatgan proyektlar ro’yhati turadi.

Dasturni ochgandan keyin Edit1 komponentini tanlanilib, Object Instpector oynasidan Events bo’limi ochiladi. U yerdan kerakli hodisa o’ng tomonidagi maydonda sichqoncha tugmasi ikki marta tez bosiladi. Natijada ushbu hodisani qayta ishlash protsedurasi hosil bo’ladi. Shundan so’ng dastur kodini yozish mumkin. B5-listingda Edit1 va Edit2 komponentlari uchun hodisani qayta ishlash protseduralari yozilgan.

В5-listing.

unit Unit1;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls;

type

  TForm1 = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Button1: TButton;

    Button2: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Edit1KeyPress(Sender: TObject; var Key: Char);

    procedure Edit2KeyPress(Sender: TObject; var Key: Char);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form1: TForm1;

implementation

{$R *.dfm}

 // Hisobla tugmasini bosish

procedure TForm1.Button1Click(Sender: TObject);

 var  //O’zgaruvchilarni e’lon qilish

   I:Real;// Tok kuchi

   U:Real;// Kuchlanish

   P:Real;// Quvvat

begin

   // kiritish maydonlaridan qiymatlarni o’qish

  I:=StrToFloat(Edit1.Text);

  U:=StrToFloat(Edit2.Text);

   // Quvvatni hisoblash

  P:=I*U;

   // Natijani chiqarish

  Label4.Caption:=’Tok kuchi — ‘+Edit1.Text+’ A’+#13

  +’Kuchlanish — ‘+Edit2.Text+’ V’+#13

  +’Quvvat — ‘+FloatToStr(P)+’ Wt’;

end;

  // Yakunlash tugmasini bosish

procedure TForm1.Button2Click(Sender: TObject);

begin

Form1.Close;//Dasturning bosh ishchi oynasini yopish

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

// Key — bosilgan tugmaga mos belgi.

// agarda belgiga ruhsat bo’lmasa u holda protsedura uni

// 0 kodli belgiga almashtiradi. Natijada bu belgi tahrirlash

// maydonida yozilmaydi.

case Key of

‘0’..’9′: ; // raqam

#8 : ; //  <Back Space> tugmasi

#13 : Edit2.SetFocus ; //  <Enter> tugmasi

// boshqa belgilarni kiritib bo’lmaydi

else Key :=Chr(0); // belgini ko’rsatmaslik

end;

end;

procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);

begin

 case Key of

‘0’..’9′: ; // raqam

#8 : ; //  <Back Space> tugmasi

#13 : Button1.SetFocus; //  <Enter> tugmasi

// boshqa belgilarni kiritib bo’lmaydi

else Key :=Chr(0); // belgini ko’rsatmaslik

end;

end;

end.

Barcha o’zgartirishlar bajarib bo’linganidan keyin, dasturni saqlab qo’yish lozim bo’ladi. Buningh uchun File menyusidan Save all buyrug’ini tanlash yetarli yoki standart uskunalar panelidagi Save all tugmasini bosish kerak (B42-rasm).

B42-rasm. Standart uskunalar paneli

Ilovaga oxirgi o’zgartirishlarni kiritish

Dastur tayyor bo’lgandan keyin, unga oxirgi o’zgartirishlar kiritish kerak. Ya’ni Dasturga nom berish kerak va belgi tanlash kerak. Bu nom va belgi dastur ishlagan vaqtda buyruqlar panelida ko’rinib turadi. Buning uchun Project  menyusidan Options buyrug’ini tanlash kerak. Natijada Project Options oynasi ochiladi(B44-rasm). O’zgartirishlar bu oynaning Application bo’limida amalga oshiriladi. Bo’limdagi Title maydoniga ilova nomini berish kerak. Standart holatda Ilovaga Delphi 7 ning belgisi beriladi.Bu belgini o’zgartirish uchun  Load Icon tugmasini bosish kerak.So’ngra papkalarni ko’rish standart oynasidan kerakli belgini tanlash kerak. Belgilar ICO kengaytmasiga ega bo’ladi.

В44-rasm.

Ilova uchun belgi yaratish

Dasturchi o’z dasturiga belgi yaratishi mumkin. Buning uchun u Delphi tarkibiga kiruvchi Image Editor dasturidan foydalanadi. Bu dastur Tools menyusidan Image Editor buyrug’ini tanlash orqali yoki Пуск | Программы Borland Delphi 7 | Image Editor tanlash bilan ishga tushiriladi.

Yangi belgini yaratish uchun hosil bo’lgan Image Editor ishchi oynasining File menyusidan New buyrug’ini tanlash kerak. So’ngra paydo bo’lgan ro’yxatdan Icon File tanlanadi. Natijada Icon Properties oynasi ochiladi. Bu oynada yaratilayotgan belgining xususiyatlari tanlanadi: size (o’lchami) — 32×32 (Windows belgilarining standart o’lchami) va colors (rang) — 16 xil rang. Ok tugmasi bosilishi bilan Icon1.ico oynasi ochiladi. Bu oynada standart uskunalar yordamida kerakli belgini chizish mumkin.

Image Editor da tasvir yaratish oddiy grafik muharrirlar singari amalga oshiriladi, masalan MS Paint. Biroq, uning nozikligi shundaki, dastlabki chizish maydoni shaffof (transparent) rang bilan bo’yalgan bo’ladi. Agar belgi ushbu fonga chizilsa, u holda tasvirning shaffof rang bilan bo’yalgan qismlari belgi joylashgan fonning rangini oladi.

Belgini yaratish jarayonida noto’g’ri chizilgan elementni uning ustidan shaffof rangga bo’yash yo’li bilan o’chirish mumkin. Buning uchun ranglar palitrasining pastki chap burchagidagi kvadratdan foydalanish kerak.

Yaratilgan belgi addiy holda saqlanadi, ya’ni File menyusidan Save buyrug’ini tanlash kerak.

Ilovani boshqa kompyuterga ko’chirish.

Unchalik katta bo’lmagan, ya’ni faqat standart komponentlardan foydalanilib yaratilgan va yagona exe fayldan iborat bo’lgan dasturlarni oddiy disketlar yordamida boshqa kompyuterga ko’chirish mumkin.

Kutubxonalardan, drayverlardan va boshqa dasturiy komponentlardan, masalan, ma’lumotlar bazasiga ruhsat beruvchi komponentlardan foydalanib yaratilgan dasturlarni boshqa kompyuterga oddiy yo’l bilan ko’chirish mummo tug’diradi. Bunday dasturlar uchun o’rnatuvchi disklarni (CD-ROM) yaratish maqsadga muvofiq. Delphi komplekt dasturlar qatoriga kiruvchi InstallShield Express dasturi yordamida bunday disklarni yaratish mumkin. InstallShield Express dasturi haqida keyingi darslarda ko’rib o’tamiz.

Программы, которые используют библиотеки, драйверы и другие программные компоненты, например, компоненты доступа к базам данных, перенести на другой компьютер вручную проблематично. Для таких программ лучше создать установочный диск (CD-ROM). Сделать это можно, например, при помощи пакета InstallShield Express, который входит в комплект поставки Delphi. Процесс создания установочного диска описан в гл. 18.

5-9-sinflar uchun choraklik testlar to`plami

6-sinf Matn muharrirlari

6-sinf  uchun 1 dars ishlanmasi “_______” ____________ 2010  yil

Mavzu: MATN   MUHARRIRLARI Read more…

5-sinf kirish testi

5-sinf kirish testi

Mustaqillik shiori