Dasturiy injiniring
Download 1.98 Mb. Pdf ko'rish
|
MTM uchun oyin dasturi
1. Qiziqtiruvchi o’yin
1.1. Uskunalar panelidan Additional bo’limini tanlab, Form1 oynasiga 36 ta Shape komponentasini olib joylashtiriladi. 1.2. Barcha Shape komponentasi Shape xususiyatiga stEllipse tanlanadi. 1.3. Barcha Shape komponentasi Height xususiyatiga 73 deb yoziladi. 1.4. Barcha Shape komponentasi Width xususiyatiga 65 deb yoziladi. 1.5. Barcha Shape komponentasi Brush->Stayle xususiyatiga bsSolid ya’ni oddiy ko’rinishi tanlanadi. 1.6. 1-14 gacha Shape komponentasi Brush->Color xususiyatiga clWhite ya’ni oq rang tanlanadi. 1.7. 15-23 gacha Shape komponentasi Brush->Color xususiyatiga clYellow ya’ni sariq rang tanlanadi. 1.8. 24-28 gacha Shape komponentasi Brush->Color xususiyatiga clRed ya’ni qizil rang tanlanadi. 1.9. Uskunalar panelidan AlphaStandart bo’limini tanlab, Form1 oynasiga sPanel komponentasini olib joylashtiriladi. 1.20. Uskunalar panelidan Additional bo’limini tanlab, Form1 oynasiga sPanel1 ichiga 5 ta Shape komponentasini olib joylashtiriladi. 1.21. 29-33 gacha Shape komponentasi Brush->Color xususiyatiga clLime ya’ni yashil rang tanlanadi. 7
Har bir xatoga 1 ta Shape oq rangga bo’yaladi. 1.22. 34-36 gacha Shape komponentasi Brush->Color xususiyatiga clLime ya’ni yashil rang tanlanadi. 1.23. Uskunalar panelidan Standart bo’limini tanlab, Form1 oynasiga Label komponentasini olib formaning chap tepa qismiga joylashtiriladi. Bu achkolarni ko’rsatib turadi. 1.24. Uskunalar panelidan Standart bo’limini tanlab, Form1 oynasiga sPanel1 ichiga sPanel1ning o’ng tomoniga Label komponentasini olib joylashtiriladi. Bu Shape yetmagan qo’shimcha bonuslarni ko’rsatib turadi. 1.25. Label1, Label2 ob’yektni ko’rinishiga doir xossalaridan Font tanlanadi (... bosilgan holda). Fornt shirift = “ Times New Roman”, qalin, 28 razmerga sozlanadi va OK tugmasi bosiladi. 1.26. Label1, Label2 komponentasi Caption xususiyatiga "0" deb yoziladi; 1.27. Label1 komponentasi Font->Color clRed ya’ni qizil tanlanadi. 1.28. 29-33 Shape komponentasi Height xususiyatiga 33 deb yoziladi. 1.29. 29-33 Shape komponentasi Width xususiyatiga 33 deb yoziladi. 1.30. System bo’limidan Timer komponentasini olib Form1 oynasiga ixtiyoriy joylashtiriladi. 1.30.1. Sichqonchaning chap tugmasini Timer1 ustiga 2 marta bosgan holda ichiga kiriladi va quyidagi kod yoziladi: void __fastcall TForm1::Timer1Timer(TObject *Sender) { Label1->Caption=IntToStr(achko); if(achko<=50) {
Timer1->Interval=20; }
else if(achko>=50&&achko<=55) {
Timer1->Interval=18; }
else if(achko>=100&&achko<=105) {
Timer1->Interval=16; }
8
else if(achko>=150&&achko<=155) { Timer1->Interval=15; } if(jon { if(Shape33->Brush->Color==clLime) { Shape33->Brush->Color=clWhite; } else if(Shape32->Brush->Color==clLime) { Shape32->Brush->Color=clWhite; } else if(Shape31->Brush->Color==clLime) { Shape31->Brush->Color=clWhite; } else if(Shape30->Brush->Color==clLime) { Shape30->Brush->Color=clWhite; } else if(Shape29->Brush->Color==clLime) { Shape29->Brush->Color=clWhite; } }
Label2->Caption=IntToStr(jon); if(jon<=0&&j) { f=1; S1->Click(); j=0; Shape29->Brush->Color=clWhite; sButton2->Visible=1; } if(f) { r=rand()%400; Shape1->Top=0-r-75; r=rand()%400; Shape2->Top=0-r-75; r=rand()%400; Shape3->Top=0-r-75; r=rand()%400; Shape4->Top=0-r-75; r=rand()%400; Shape5->Top=0-r-75; r=rand()%400; Shape6->Top=0-r-75; r=rand()%400; Shape7->Top=0-r-75;
9
r=rand()%400; Shape8->Top=0-r-75; r=rand()%400; Shape9->Top=0-r-75; r=rand()%400; Shape10->Top=0-r-75; r=rand()%400; Shape11->Top=0-r-75; r=rand()%400; Shape12->Top=0-r-75; r=rand()%400; Shape13->Top=0-r-75; r=rand()%400; Shape14->Top=0-r-75; //sariq r=rand()%1000; Shape15->Top=0-r-300; r=rand()%1000; Shape16->Top=0-r-300; r=rand()%1000; Shape17->Top=0-r-300; r=rand()%1000; Shape18->Top=0-r-300; r=rand()%1000; Shape19->Top=0-r-300; r=rand()%1000; Shape20->Top=0-r-300; r=rand()%1000; Shape21->Top=0-r-300; r=rand()%1000; Shape22->Top=0-r-300; r=rand()%1000; Shape23->Top=0-r-300; //qizil r=rand()%5000; Shape24->Top=0-r-3000; r=rand()%5000; Shape25->Top=0-r-3000; r=rand()%5000; Shape26->Top=0-r-3000; r=rand()%5000; Shape27->Top=0-r-3000; r=rand()%5000; Shape28->Top=0-r-3000; //jon r=rand()%1000; Shape34->Top=0-r-1000; r=rand()%1000; Shape35->Top=0-r-1000; r=rand()%1000; Shape36->Top=0-r-1000; f=0;
10
} Shape1->Top= Shape1->Top+v; Shape2->Top= Shape2->Top+v; Shape3->Top= Shape3->Top+v; Shape4->Top= Shape4->Top+v; Shape5->Top= Shape5->Top+v; Shape6->Top= Shape6->Top+v; Shape7->Top= Shape7->Top+v; Shape8->Top= Shape8->Top+v; Shape9->Top= Shape9->Top+v; Shape10->Top= Shape10->Top+v; Shape11->Top= Shape11->Top+v; Shape12->Top= Shape12->Top+v; Shape13->Top= Shape13->Top+v; Shape14->Top= Shape14->Top+v; Shape15->Top= Shape15->Top+(v*2); Shape16->Top= Shape16->Top+(v*2); Shape17->Top= Shape17->Top+(v*2); Shape18->Top= Shape18->Top+(v*2); Shape19->Top= Shape19->Top+(v*2); Shape20->Top= Shape20->Top+(v*2); Shape21->Top= Shape21->Top+(v*2); Shape22->Top= Shape22->Top+(v*2); Shape23->Top= Shape23->Top+(v*2); Shape24->Top= Shape24->Top+(v*3); Shape25->Top= Shape25->Top+(v*3); Shape26->Top= Shape26->Top+(v*3); Shape27->Top= Shape27->Top+(v*3); Shape28->Top= Shape28->Top+(v*3); Shape34->Top= Shape34->Top+(v*2); Shape35->Top= Shape35->Top+(v*2); Shape36->Top= Shape36->Top+(v*2); if(Shape1->Top>Form1->Height-120) { r=rand()%400; Shape1->Top=0-r-75; } if(Shape2->Top>Form1->Height-120) { r=rand()%400; Shape2->Top=0-r-75; jon--; }
if(Shape3->Top>Form1->Height-120) {
r=rand()%400; Shape3->Top=0-r-75; jon--; } if(Shape4->Top>Form1->Height-120) { r=rand()%400; Shape4->Top=0-r-75; jon--;
11
} if(Shape5->Top>Form1->Height-120) {
r=rand()%400; Shape5->Top=0-r-75; jon--; } if(Shape6->Top>Form1->Height-120) { r=rand()%400; Shape6->Top=0-r-75; jon--; }
if(Shape7->Top>Form1->Height-120) {
r=rand()%400; Shape7->Top=0-r-75; jon--; } if(Shape8->Top>Form1->Height-120) { r=rand()%400; Shape8->Top=0-r-75; jon--; }
if(Shape9->Top>Form1->Height-120) {
r=rand()%400; Shape9->Top=0-r-75; jon--; } if(Shape10->Top>Form1->Height-120) { r=rand()%400; Shape10->Top=0-r-75; jon--; }
if(Shape11->Top>Form1->Height-120) {
r=rand()%400; Shape11->Top=0-r-75; jon--; } if(Shape12->Top>Form1->Height-120) { r=rand()%400; jon--; Shape12->Top=0-r-75; }
if(Shape13->Top>Form1->Height-120) {
r=rand()%400; jon--; Shape13->Top=0-r-75; } if(Shape14->Top>Form1->Height-120) { r=rand()%400; jon--; Shape14->Top=0-r-75; }
//sariq 12
if(Shape15->Top>Form1->Height-120) { r=rand()%1000; jon--; Shape15->Top=0-r-300; }
if(Shape16->Top>Form1->Height-120) {
r=rand()%1000; Shape16->Top=0-r-300; jon--; } if(Shape17->Top>Form1->Height-120) { r=rand()%1000; Shape17->Top=0-r-300; jon--; }
if(Shape18->Top>Form1->Height-120) {
r=rand()%1000; jon--; Shape18->Top=0-r-300; } if(Shape19->Top>Form1->Height-120) { r=rand()%1000; jon--; Shape19->Top=0-r-300; }
if(Shape20->Top>Form1->Height-120) {
r=rand()%1000; Shape20->Top=0-r-300; jon--; } if(Shape21->Top>Form1->Height-120) { r=rand()%1000; Shape21->Top=0-r-300; jon--; }
if(Shape22->Top>Form1->Height-120) {
r=rand()%1000; jon--; Shape22->Top=0-r-300; } if(Shape23->Top>Form1->Height-120) { r=rand()%1000; jon--; Shape23->Top=0-r-300; }
//qizil if(Shape24->Top>Form1->Height-120) { r=rand()%5000; jon--; Shape24->Top=0-r-3000; }
if(Shape25->Top>Form1->Height-120) 13
{ r=rand()%5000; jon--; Shape25->Top=0-r-3000; } if(Shape26->Top>Form1->Height-120) { r=rand()%5000; jon--; Shape26->Top=0-r-3000; }
if(Shape27->Top>Form1->Height-120) {
r=rand()%5000; jon--; Shape27->Top=0-r-3000; } if(Shape28->Top>Form1->Height-120) { r=rand()%5000; Shape28->Top=0-r-3000; jon--; }
if(Shape34->Top>Form1->Height-120) {
r=rand()%1000; Shape34->Top=0-r-1000; } if(Shape35->Top>Form1->Height-120) { r=rand()%1000; Shape35->Top=0-r-1000; }
if(Shape36->Top>Form1->Height-120) {
r=rand()%1000; Shape36->Top=0-r-1000; } }
komponentasini olib joylashtiriladi. 1.31.1. sButton1 komponentasi Caption xususiyatiga "Start" deb yoziladi; 1.31.2. sButton1 ob’yektni ko’rinishiga doir xossalaridan Font tanlanadi(... bosilgan holda).
Fornt shirift = “ Times New Roman”, qalin, 72 razmerga sozlanadi va OK tugmasi bosiladi. sButton1 tugmasi ichiga quyidagi kod yoziladi: void __fastcall TForm1::sButton2Click(TObject *Sender) { S1->Click(); 14
sButton1->Visible=0; } 1.32. Standart bo’limidan MainMenu komponentasini olib Form1 oynasiga ixtiyoriy joylashtiriladi(Ma’lumotlar Standart joylashib qoladi). 1.32.1. MainMenu1ning ob’yektni ko’rinishiga doir xossalaridan Items tanlanadi (... bosiladi). 1.32.2. MainMenu1 Itemsga "Chiqish" hamda "Start" tugmasini hosil qilamiz. Chiqish tugmasi ichiga quyidagi kod yoziladi: void __fastcall TForm1::C1Click(TObject *Sender) { Form5->Visible=1; Form1->Close(); } Start tugmasi ichiga quyidagi kod yoziladi: void __fastcall TForm1::S1Click(TObject *Sender) { if(!j) { jon=5; Shape29->Brush->Color=clLime; Shape30->Brush->Color=clLime; Shape31->Brush->Color=clLime; Shape32->Brush->Color=clLime; Shape33->Brush->Color=clLime; achko=0; Label1->Caption="0"; j=1; } if(Timer1->Enabled) { Timer1->Enabled=0; Shape1->Enabled=0; Shape2->Enabled=0; Shape3->Enabled=0; Shape4->Enabled=0; Shape5->Enabled=0; Shape6->Enabled=0; Shape7->Enabled=0; Shape8->Enabled=0; Shape9->Enabled=0; Shape10->Enabled=0; Shape11->Enabled=0; Shape12->Enabled=0; Shape13->Enabled=0; Shape14->Enabled=0; Shape15->Enabled=0;
15
Shape16->Enabled=0; Shape17->Enabled=0; Shape18->Enabled=0; Shape19->Enabled=0; Shape20->Enabled=0; Shape21->Enabled=0; Shape22->Enabled=0; Shape23->Enabled=0; Shape24->Enabled=0; Shape25->Enabled=0; Shape26->Enabled=0; Shape27->Enabled=0; Shape28->Enabled=0; Shape34->Enabled=0; Shape35->Enabled=0; Shape36->Enabled=0; S1->Caption="Start"; sButton2->Visible=1; }
else {
Timer1->Enabled=1; Shape1->Enabled=1; Shape1->Enabled=1; Shape2->Enabled=1; Shape3->Enabled=1; Shape4->Enabled=1; Shape5->Enabled=1; Shape6->Enabled=1; Shape7->Enabled=1; Shape8->Enabled=1; Shape9->Enabled=1; Shape10->Enabled=1; Shape11->Enabled=1; Shape12->Enabled=1; Shape13->Enabled=1; Shape14->Enabled=1; Shape15->Enabled=1; Shape16->Enabled=1; Shape17->Enabled=1; Shape18->Enabled=1; Shape19->Enabled=1; Shape20->Enabled=1; Shape21->Enabled=1; Shape22->Enabled=1; Shape23->Enabled=1; Shape24->Enabled=1; Shape25->Enabled=1; Shape26->Enabled=1; Shape27->Enabled=1; Shape28->Enabled=1; Shape34->Enabled=1;
16
Shape35->Enabled=1; Shape36->Enabled=1; S1->Caption="Stop"; } } 1.33. Form1 oynasi ichki xususiyatlaridan OnClouse(ya’ni oynaning yopilishi) xususiyatiga quyidagi kod yoziladi: void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) { Form5->Visible=1; } 1.34. Form1 oynasi ichki xususiyatlaridan OnCreate(ya’ni formaning ochilishi) xususiyatiga quyidagi kod yoziladi: void __fastcall TForm1::FormCreate(TObject *Sender) { Form1->Height=720; Form1->Top=20; Form1->Left=50; r=rand()%400; Shape1->Top=0-r-75; r=rand()%400; Shape2->Top=0-r-75; r=rand()%400; Shape3->Top=0-r-75; r=rand()%400; Shape4->Top=0-r-75; r=rand()%400; Shape5->Top=0-r-75; r=rand()%400; Shape6->Top=0-r-75; r=rand()%400; Shape7->Top=0-r-75; r=rand()%400; Shape8->Top=0-r-75; r=rand()%400; Shape9->Top=0-r-75; r=rand()%400; Shape10->Top=0-r-75; r=rand()%400; Shape11->Top=0-r-75; r=rand()%400; Shape12->Top=0-r-75; r=rand()%400; Shape13->Top=0-r-75; r=rand()%400; Shape14->Top=0-r-75; //sariq
17
r=rand()%1000; Shape15->Top=0-r-300; r=rand()%1000; Shape16->Top=0-r-300; r=rand()%1000; Shape17->Top=0-r-300; r=rand()%1000; Shape18->Top=0-r-300; r=rand()%1000; Shape19->Top=0-r-300; r=rand()%1000; Shape20->Top=0-r-300; r=rand()%1000; Shape21->Top=0-r-300; r=rand()%1000; Shape22->Top=0-r-300; r=rand()%1000; Shape23->Top=0-r-300; //qizil r=rand()%5000; Shape24->Top=0-r-3000; r=rand()%5000; Shape25->Top=0-r-3000; r=rand()%5000; Shape26->Top=0-r-3000; r=rand()%5000; Shape27->Top=0-r-3000; r=rand()%5000; Shape28->Top=0-r-3000; //jon r=rand()%1000; Shape34->Top=0-r-3000; r=rand()%1000; Shape35->Top=0-r-3000; r=rand()%1000; Shape36->Top=0-r-3000; } 135. Shape1 ichki xususiyatlaridan OnMauseDown(ya’ni ob’yekt bosilganda) xususiyatiga quyidagi kod yoziladi: void __fastcall TForm1::Shape1MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { r=rand()%400; Shape1->Top=0-r-75; //Qolgan 1-14 Shapelarga ham shu kodni yozamiz. achko++; } 136. 15-23 Shape ichki xususiyatlaridan OnMauseDown(ya’ni ob’yekt bosilganda) xususiyatiga quyidagi kod yoziladi: 18
void __fastcall TForm1::Shape15MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { r=rand()%1000; Shape15->Top=0-r-300; //Etiborli bo’ling Shape raqami o’zgaradi. Keyingisi //Shape 16 bo’adi.
achko=achko+2; } 137. 24-28 Shape ichki xususiyatlaridan OnMauseDown(ya’ni ob’yekt bosilganda) xususiyatiga quyidagi kod yoziladi: void __fastcall TForm1::Shape28MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { r=rand()%5000; Shape28->Top=0-r-3000; //E’tiborli bo’ling Shape raqami o’zgaradi. Keyingisi //Shape 29 bo’ladi. achko=achko+3; } 138. 34-36 Shape ichki xususiyatlaridan OnMauseDown(ya’ni ob’yekt bosilganda) xususiyatiga quyidagi kod yoziladi: void __fastcall TForm1::Shape36MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { r=rand()%1000; Shape36->Top=0-r-1000; //Etiborli bo’ling Shape raqami o’zgaradi. Oldingisi //Shape 35 bo’adi.
if(Shape33->Brush->Color==clLime) { jon++; } else { if(Shape29->Brush->Color!=clLime) { Shape29->Brush->Color=clLime; } else if(Shape30->Brush->Color!=clLime) { Shape30->Brush->Color=clLime; } else if(Shape31->Brush->Color!=clLime) { Shape31->Brush->Color=clLime; } else if(Shape32->Brush->Color!=clLime) { Shape32->Brush->Color=clLime; 19
} else if(Shape33->Brush->Color!=clLime) { Shape33->Brush->Color=clLime; } jon++; }
} 1.39. Form1 Caption xususiyatiga "Asosiy o’yin" deb yozib qo’yamiz. Form1 BorderStyle xususiyatini bsSingle(ya’ni chuzib bo’lmaydigan) qilamiz; 1.40. BorderIconsga "[biSystemMenu,biMinimize]" deb yozamiz;
1.1 rasm.Form1 oynasi tayyor holda. Download 1.98 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling