Ishdan maqsad: C++ tilining tilining grafik imkoniyatlarini o’rganish xamda dasturni shakllantirishda ulardan foydalanish. Dastur bajarilishi davomida garfik imkoniyatlardan to‗liq foydalanish. Masalaning qo„yilishi



Download 245,94 Kb.
bet4/9
Sana30.12.2021
Hajmi245,94 Kb.
#92970
1   2   3   4   5   6   7   8   9
Bog'liq
24-Lab

Deyarli bo„sh oyna. Bu yerda biz xatolarni qayta ishlashni muhokama qilamiz, hamda main() funksiyasida grafikani tasvirlashga o‗tamiz:



24 http://www.cplusplus.com/

Point tl(100,100); // oynamizning yuqori chap burchagi

Simple_window win(tl,600,400,"Canvas");

// tl oyna koordinatalari chap yuqori burchakka joy beradi

// 600*400 oyna o‗lchami

// sarlavha: Canvas win.wait_for_button(); // tasvirlash!

Ekranda oyna chiqishi uchun, biz tizim boshqaruvini grafik foydalanuvchi

interfeysiga beramiz. Buning uchun win.wait_for_button() funksiyasidan foydalanamiz. Natija quyidagi rasmda keltirilgan.



Bizning vazifamiz – ekranga chiqarish uchun obyektlarni yaratish mumkin bo‗lgan, sinflarni aniqlash. Masalan, siniq chiziq ko‗rinishida grafik chizishimiz mumkin. Quyida bu vazifani bajarish uchun katta bo‗lmagan dastur keltirilgan:

#include "Simple_window.h" // oyna kutubxonasiga kirishni ochadi

#include "Graph.h" // garfik kutubxonaga kirishni ochadi

int main()

{

using namespace Graph_lib; // bizning grafik vositalarimiz



// bo‗shliqda joylashgan

// Graph_lib nomi

Point tl(100,100); // ekranning yuqori chap burchagini beramiz

Simple_window win(tl,600,400,"Canvas"); //sodda oynani yaratamiz

Polygon poly; // shaklni yaratamiz(ko‗pburchak) poly.add(Point(300,200)); // nuqtani qo‗shamiz

poly.add(Point(350,100)); // boshqa nuqtani qo‗shamiz

poly.add(Point(400,200)); // uchinchi nuqtani qo‗shamiz

poly.set_color(Color::red); // poly obyekt vositasini aniqlaymiz

win.attach (poly); // poly obyektini oyna bilan bog‗laymiz

win.wait_for_button(); // boshqaruvni ekran drayverga uzatamiz

}

Bu dasturni ishga tushirib, biz taxminan quyidagi tasvirni ko‗ramiz.




Dastur satrlari bo‗ylab, uni qanday ishlashini ko‗rib chiqamiz. Birinchi navbatda dasturga grafik interfeysimizdagi kutubxonaning boshlang‗ich fayllarini keltiramiz.

#include "Simple_window.h" // oyna kutubxonasiga kirishni ochadi

#include "Graph.h" // garfik kutubxonaga kirishni ochadi

Keyin main() funksiyasida biz kompyuterga, grafik kutubxonamiz vositalari

Graph_lib nomli makonda joylashganini xabar qilamiz.

using namespace Graph_lib; // grafik vositalari Graph_lib nomli makonda joylashgan

Keyin oynamizning yuqori chap burchagi koordinatalari deb hisoblaydigan

nuqtani belgilaymiz.

Point tl(100,100); // ekrannnig yuqori chap burchagi koordinatalarini beramiz

Keyin ekranda oyna yaratamiz.

Simple_window win(tl,600,400,"Canvas"); // sodda oyna yaratamiz

Buning uchun Graph_lib kutubxonasida oynani tasvirlovchi,

Simple_window sinfidan foydalanamiz. Simple_window sinfining aniq obyekti win nomi bilan nomlanadi; boshqacha aytganda win – bu Simple_window sinfining o‗zgaruvchisi.

Canvas satri oynani belgilash uchun foydalaniladi. Agar yaxshilab qaralsa, unda oyna ramkasining yuqori chap burchagida Canvas so‗zini ko‗rish mumkin.

Oynaga obyektni joylashtiramiz.

Polygon poly; // shaklni yaratamiz (ko‗pburchak)


poly.add(Point(300,200));

//

nuqta qo‗shamiz

poly.add(Point(350,100));

//

boshqa nuqta qo‗shamiz

poly.add(Point(400,200));

//

uchinchi nuqtani

qo‗shamiz

poly ko‗pburchakni belgilaymiz, so‗zngra unga nuqtani qo‗shamiz. Bizning grafik kutubxonamizda Polygon sinf obyektlari bo‗sh yaratiladi, biz unga xoxlagancha nuqtalar sonini qo‗shishimiz mumkin. Biz uchta nuqta qo‗shdik va uchburchak hosil qildik. Nuqtalar o‗zida oynada berilgan gorizontal va vertikal x va u koordinatalarni aks ettiradi.

Bunday imkoniyatni namoyish etish uchun, ko‗pburchak tomonlarini qizil rang bilan berdik.

poly.set_color(Color::red); // poly obyekti vositalarini aniqlaymiz




Download 245,94 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish