Yaratish uchun ham foydalaniladi. So‘nggi yillarda kompyuter va uning dasturiy ta‘minotiga bo‘lgan talab va qiziqishlar ortib bormoqda. Bu esa o‘z navbatida dasturchidan katta izlanish va mahoratni talab qiladi


Download 295.63 Kb.
bet9/15
Sana08.01.2022
Hajmi295.63 Kb.
#237053
1   ...   5   6   7   8   9   10   11   12   ...   15
Bog'liq
kurs ishi

do/while takrorlash strukturasi: do/while ifodasi while strukturasiga
o'xshashdir. Bitta farqi shundaki whileda shart boshiga tekshiriladi. do/while da esa
takrorlanish tanasi eng kamida bir marta ijro ko'radi va shart strukturaning so'ngida
test qilinadi. Shart true bo'lsa blok yana takrorlanadi. Shart false bo'lsa do/while
ifodasidan chiqiladi. Agar do/while ichida qaytarilishi kerak bo'lgan ifoda bir dona
bo'lsa {} qavslarning keragi yo'qdir. Quyidagicha bo'ladi:
do
ifoda;
while (shart) Lekin {} qavslarning yo'qligi dasturchini adashtirishi mumkin. Chunki qavssiz
do/while oddiy while ning boshlanishiga o'xshaydi. Buni oldini olish uchun {}
qavslarni har doim qo'yishni tavsiya etamiz.
do {
ifoda1;
ifoda2;
....

} while (shart);
Ko‟rsatkichlar va xotirani boshqarish: C++ da ko‘rsatkichlar bilan ishlash
asosiy o‘rinlardan birida turadi. C# da oddiygina dastur tuzilishida ham xavfsiz
kod yozish talab etiladi va ko‘rsatgichlar va manzillar arifmetikasidan foydalanishni man etadi. Bu esa C# dasturchini ortiqcha xotirani boshqarish ishlari bilan shug‘ullanishining oldinini olib, dasturning funksional qismiga ko‘proq e‗tibor berishini ta‘minlaydi.
C# da C++ dagidek ko‘p merosxo‘rlik va shablon bilan ishlanmaydi,
faqatgina interfeys uchungina ishlatilishi mumkin.



II BOB

C # da chizishga Grafika ob'ekti yordamida erishiladi. Grafika ob'ekti turli xil displey moslamalari va ekran o'lchamlari bilan ishlashda mavjud bo'lgan barcha muammolarni mavhumlashtirib, grafik chizishda og'riqning katta qismini oladi.

C # dasturchisi shunchaki Grafik Ob'ektni yaratishi va unga nimani va qayerda chizish kerakligini aytishi kerak.
Doimiy grafika Bo'limni davom ettirishdan oldin ta'kidlash kerak bo'lgan muhim narsa shundan iboratki, komponent uchun faqat Grafika ob'ekti yaratilib, so'ngra shu tarkibiy qism ustiga chizish doimiy grafikalarni yaratmaydi. Aslida nima bo'ladi, derazani minimallashtirishi yoki boshqa oynani bekitishi bilanoq grafikalar o'chiriladi. Shuning uchun har qanday grafikaning turg'unligini ta'minlash uchun choralar ko'rish kerak. Bunga erishish uchun ikkita mexanizm mavjud.

Bittasi - boshqaruvni Paint () voqea ishlov beruvchisida (komponent qayta ishlanishi kerak bo'lganda ishga tushiriladi) qayta-qayta chizish, yoki rasmni xotirada bitmap rasmida bajarish va keyin ushbu tasvirni tarkibiy qismga o'tkazish. Paint () hodisasi tetiklanadi. Ushbu bo'limda biz Paint () tadbirida grafikani qayta chizishni va keyingibobda C # da doimiy grafikalar uchun bitmaplardan foydalanishni ko'rib chiqamiz.


Grafika ob'ektini yaratish

Ushbu darslikning birinchi qadami CSharpGraphics deb nomlangan yangi Visual Studio loyihasini yaratishdir. Yaratilgan yangi loyihada, shakllanish maydonida Formani tanlang va Xususiyatlar panelining yuqori qismidagi chaqmoq tugmachasini bosib, Form uchun mavjud bo'lgan voqealarni ro'yxatga oling.

Kodni tahrirlash sahifasini ko'rsatish uchun Paint tadbirini ikki marta bosing. Grafika ob'ektlari rasm chizilishi kerak bo'lgan tarkibiy qismning CreateGraphics () usulini chaqirib yaratiladi. Masalan, Grafika ob'ekti Form1 deb nomlangan Formamizda Paint () usulida quyidagicha CreateGraphics () usulini chaqirib, yaratilishi mumkin:     

Private void Form1_Paint (ob'ekt yuboruvchisi, PaintEventArgs

      

  {             System.Drawing.Grafika grafikasiObj;     

        graphicsObj = this.CreateGraphics ();         }

Endi bizda Grafik ob'ekt mavjud bo'lib, unga chizish uchun qalam kerak bo'ladi.
C# da qalam yaratish
Grafika ob'ekti qalam ob'ekti bo'lmagan holda juda kam foydalanadi (qog'oz varag'i qalam yoki qalamisiz yaxshi emas). Qalam ob'ekti quyidagicha osonlikcha yaratilishi mumkin: Qalam variable_name = yangi qalam (rang, kenglik); bu erda o'zgaruvchan_name - Pen ob'ekti uchun tayinlanadigan nom, rangi ruchka rangi va kengligi ruchka chiziladigan chiziqlar kengligi. Masalan, biz 5 piksel kenglikda qizil qalamni quyidagicha yaratamiz:


Private void Form1_Paint (ob'ekt yuboruvchisi, PaintEventArgs

     {             System.Drawing.Grafika grafikasiObj;        

       graphicsObj=this.CreateGraphics ();            

 Pen myPen = new Pen (System.Drawing.Color.Red, 5);         }


Pen ob'ekti yaratilgandan so'ng, boshqa xususiyatlar o'zgarishi mumkin. Masalan, DashStyle xususiyati chiziq uslubini o'zgartirish uchun o'zgartirilishi mumkin (masalan, Dash, DashDot, DashDotDot, nuqta, qattiq yoki ixtiyoriy). Qalam yaratilganidan so'ng rang va kenglik kabi xususiyatlar ham o'zgarishi mumkin:

C # chiziqlarni chizish




ОБРАЗЕЦ

Chiziqlar C # da Grafika ob'ektining DrawLine () usuli yordamida chizilgan. Ushbu usul argument sifatida oldindan tayyorlanadigan Pen ob'ekti va x va y koordinatalarining ikkita to'plamini (chiziqning boshlanishi va oxiri) oladi. Masalan, namunaviy shaklimizdagi koordinatalar (20, 20) dan (200, 210) gacha chiziq chizish:


Private Void Form1_Paint (ob'ekt yuboruvchisi, PaintEventArgs

        {

            System.Drawing.Grafika grafikasiObj;


            graphicsObj = this.CreateGraphics ();
            Pen myPen = new Pen (System.Drawing.Color.Red, 5);
            graphicsObj.DrawLine (myPen, 20, 20, 200, 210);

        }





Yuqoridagi kod, tuzilganda va bajarilganda, quyidagicha shakl paydo bo'ladi:




C # da kvadratchalar va to'rtburchaklar chizish

C # da to'rtburchaklar va kvadratlarni chizish uchun DrawRectangle () usuli taqdim etilgan. DrawRectangle () usulini ishlatishning ikkita usuli mavjud. Biri to'rtburchaklar ob'ekti va qalam orqali o'tish, ikkinchisi to'rtburchaklar ob'ektining namunasini yaratish va uni qalam bilan birga o'tkazish. Oldindan yaratilgan to'rtburchaklar ob'ektisiz to'rtburchaklar chizishni ko'rib chiqishni boshlaymiz. Buning sintaksisi: graphicsobj.DrawRectangle (qalam, x, y, kenglik, balandlik); Shu bilan bir qatorda, koordinatalar va o'lchamlarning o'rniga to'rtburchaklar ob'ektidan o'tish. C # da to'rtburchaklar ob'ektini yaratish uchun sintaksis quyidagicha: Rectangle rectangleObj = new Rectangle (x, y, width, height);

Once a Rectangle object has been instantiated the syntax to call DrawRectangle() is as follows:

graphicsobj.DrawRectangle(pen, x, y, rectangleobj);

The following example creates a Rectangle which is then used as an argument to DrawRectangle():



private void Form1_Paint(object sender, PaintEventArgs

{

System.Drawing.Graphics graphicsObj;

graphicsObj = this.CreateGraphics();

Pen myPen = new Pen(System.Drawing.Color.Red, 5);

Rectangle myRectangle = new Rectangle(20, 20, 250, 200);

graphicsObj.DrawRectangle(myPen, myRectangle);

}


Yuqoridagi kodni o'z ichiga olgan dastur tuzilib, bajarilganda quyidagi grafikalar paydo bo'ladi:




Agar har xil shakldagi bir nechta to'rtburchaklar chizish kerak bo'lsa, DrawRectangle () -ga har bir qo'ng'iroq uchun yangi to'rtburchaklar ob'ektini yaratish kerak emas; usuli. Buning o'rniga mavjud to'rtburchaklar ob'ektining shakli to'rtburchaklar sinfining Inflate () usulini chaqirib o'zgartirilishi mumkin. Ushbu usul ikkita dalilni qabul qiladi, kengligi o'zgarishi kerak bo'lgan miqdor va balandlikni o'zgartirish kerak bo'lgan miqdor. Agar o'lcham o'zgarishsiz qolishi kerak bo'lsa, 0 o'zgaruvchan qiymat sifatida o'tkazilishi kerak. O'lchamni o'zgartirish uchun o'lchov o'zgarishi kerak bo'lgan salbiy miqdordan o'tish:


C # da ellips va doiralarni chizish

GrafikaObject klassining DrawEllipse () metodidan foydalanib, C # ichida chiziqlar va chiziqlar chizilgan. Chiziladigan shaklning o'lchami unga mos kelishi kerak bo'lgan to'rtburchaklar yordamida aniqlanadi.

DrawRectangle () usulida bo'lgani kabi DrawEllipse () usulidan foydalanishning ikki yo'li mavjud. Biri to'rtburchaklar ob'ekti va qalam orqali o'tish, ikkinchisi to'rtburchaklar ob'ektining namunasini yaratish va uni qalam bilan birga o'tkazish.

Avval to'rtburchaklar ob'ektini yaratmasdan ellipsni chizish uchun quyidagi sintaksisdan foydalaning:

graphicsobj.DrawEllipse (qalam, x, y, kenglik, balandlik);

Shu bilan bir qatorda, koordinatalar va o'lchamlarning o'rniga to'rtburchaklar ob'ektidan o'tish. C # da to'rtburchaklar ob'ektini yaratish uchun sintaksis quyidagicha:

To'rtburchak to'rtburchaklarObj = yangi to'rtburchaklar (x, y, kenglik, balandlik);

To'rtburchak ob'ekti DrawRectangle () deb nomlanadigan sintaksisni ishga tushirgandan so'ng quyidagicha:

grafikobj.DrawEllipse (Pen, x, y, to'rtburchaklar);

Quyidagi misol to'rtburchaklar hosil qiladi, undan keyin DrawEllipse () uchun argument sifatida foydalaniladi:




Download 295.63 Kb.

Do'stlaringiz bilan baham:
1   ...   5   6   7   8   9   10   11   12   ...   15




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling