Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Глоссарий. Негізгі графиктік мүмкіндіктерді қолдана отырып обіектіні қозғалысқа келтіру принципін
Негізгі графиктік мү мкіндіктерді қ олдана отырып обіектіні қ озғ алысқ а келтіру принципін, ойындарды программалауды білуі керек; 1. Объектілерді қ озғ алысқ а келтіру. Анимация. Объектіні қ озғ алысқ а келтіру алгоритмінің негізі мынада: Графиктік мү мкіндіктерді пайдалана отырып объектінің бейнесі салынады. Формада объектінің бастапқ ы орналасуы немесе барлық координаттары анық талады. Объектіні жаң а координатағ а кө шіреміз де, алдың ғ ы объектіні форма тү сімен бояймыз. Объектіні форма бетінде жылжыта отырып, белгіленген бағ ытта қ озғ алысқ а келтіреміз. Объектіні қ озғ алысқ а келтіру принципін ойындарды программалауда қ олдануғ а болады. Мысал 1. Форма бетінде сурет (объект) жылжиды. Біздің мақ сатымыз тышқ анның сол жақ кнопкасымен суретті шерте отырып жоғ арғ ы мә нді ұ пай жинау. Мысалы, атыс саны 10 болса, оның нешеуі тиетінін анық тауымыз керек. Delphi-ді жү ктейміз. Формағ а Label1, button1, Timer1 компоненттерін орналастырамыз. Label1 (Caption) тақ ырыбына есеп шартын жазамыз. Button1 компонентінің Onclick окиғ асы Label1, button1 компоненттерін кө рінбейтін қ ылады жә не Timer-ді қ осады.
procedure TForm1.Button1Click(Sender: TObject); bеgin Label1.Visible: =false; Button1.Visible: =Faise; Timer1.Enabled: =True; end;
S_f nроцедурасында объект суретін саламыз:
procedure TForm1.S_f(x, y: integer); begin with Canvas do begin Pen.Color: =clblack; Brush.Color: =clYellow; Ellipse (x, y, x+30, Y+30); Ellipse(x+9, y+10, x+11, Y+13); Ellipse(x+19, y+10, x+21, Y+13); Arc(x+4, y+4, x+26, у+26, х, у+20, х+30, y+20) end; end;
EF процедурасында суретті форма тү сімен бояймыз, яғ ни сурет экранда кө рінбейді.
procedure TForm1.EF(х, y: integer); begin with Canvas do begin Pen.Color: =clBtnFace; Brush.Color: =clBtnFace; Ellipse(x, y, x+30, Y+30); end; end;
Timer1 компонентінің ОnTimer оқ иғ асы кездейсоқ сандар генераторы арқ ылы объектінің жаң а координатасын анық тайды. procedure TForm1.Timer1Timеr(Sender: TObject); begin EF(fx, fy); f x: =Random (ClientWidth-30); fy: = Random(ClientHeight-30); S_F(fx, fy); end;
Форманың OnCreate оқ иғ асында объектінің бастапқ ы координатасы анық талады жә не кездейсоқ сандар генераторы реализацияланады. procedure TForm1.FormCreate (Sender: TObject); begin fx: =100; fy: =100; randomize; end; Форманың OnMouseDown оқ иғ асында тышқ анның сол жақ кнопкасымен суретті шерте отырып ұ пай жинаймыз жә не 10 атыстың нә тижесін кө рсетеді. procedure TForm1.FormMouseDown(Sender: Tobject; Button: TMouseBurton; Shift: TShiftState; X, Y: Integer); Begin inc(n); if(x> fx) and(x< fx+30) and(y> fy) and(y< fy+30) then inc(p); if n=10 then begin Timer1.Enabled: =false; ShowMessage (‘10 атыс. тиг. ‘ +іnttostr (p) + '. '); EF(fx, fy); Label1.Visible: =True; Button1.Visible: =True; n: =0; p: =0; end; end; Оқ иғ алар кодының модулін жә не проектіні Labl3 бумасына сақ таң ыз жә не қ осымшаны орындауғ а жіберің із.
Мысал 2. Қ арапайым тестілеу программасының қ осымшасын қ ұ ру. Word программасын немесе «Блокнотты» жү ктеп тест сұ рақ тарын дайындаймыз. Тест мазмұ нының жазу ү лгісі мынадай: 1) тест сұ рағ ы 2) жауаптың 1 варианты 3) жауаптың 2 варианты 4) жауаптың 3 варианты 5) дұ рыс жауап нө мері Тест мазмұ нын tеst.txt файлына сақ таймыз. Қ осымша 3 формадан тұ рады; 1-титульдық бет, 2-тестілеу, 3-нә тиже. Формалар арасында байланыс орнатамыз. 1 форманы жү ктейміз. Формағ а MainMenu1 компонентін қ оямыз. Меню пункттері: 1) ө зіндік бақ ылау, 2) тестілеу, 3) нә тиже. Менюдің " тестілеу''пуктінің коды: procedure TForm1.N2CIick(Sender: TObject); begin Form2.Showmodal; end; Менюдің " нә тиже" пуктінің коды: procedure TForml.N3Click(Sender: TObject); begin Form3.Showmodal; end; 2-форманы жү ктейміз. Формағ а 4-Label(l-4), 3-RadioButton(l-3), SpinEdit1, SpeedButton, BtnButton компоненттерін қ оямыз. Қ осымша интерфейсі тө менде келтірілген. SpinEdit1 компоненті санағ ыш ретінде қ олданылады, дұ рыс жауаптың санын кө рсетеді. SpеedButton1 қ омпонентінде тестілеу алгоритмі реализацияланады. Label(1-4) компоненттеріне тест сұ рағ ы мен жауаптары оқ ылады. SpeedButton1 компонентінің оқ иғ асының коды: var Form2: Tform2; f: teхtfile; op, o: integer; implementation
uses Unit3;
{$R *. dfm}
procedure Test; var s: string; begin readln(f, s); form2.label1.caption: =s; readln(f, s); Лабораториялық жұ мыс №14 Тақ ырыбы: Мә ліметтерді файлдан оқ у жә не файлғ а жазу. Тест қ ұ ру Мақ саты: Delphi ортасында файлды қ олдану. Тестілеу программасын қ ұ ру.
Материалдар жә не қ ұ ралдар: дә ріс конспекстісі, Дельфи программалау ортасы Жұ мыстың мазмұ ны жә не орындалу тә ртібі: 1. Теориялық материалды оқ у 2. Вариант бойынша тапсырмаларды орындау 3. Бақ ылау сұ рақ тарына жауап беру 4. Орындалғ ан жұ мыс жө нінде есеп беру
Лабораториялық жұ мыс бойынша есеп: 1. лабораториялық жұ мыс №14 2. тақ ырыбы, тапсырма варианты 3. Есепті шешу алгоритмі 4. Программа листингі 5. блиц-тестке жауап беру Тапсырма: «Информатика» курсында аралық бақ ылауғ а қ олданылатын тест жү йесін қ ұ рың ыз. Блиц-тест: 1.Егер х=-4, у=-7.13 болса program a; var x, y, z: real: Begin read (x, y); writeln; if x< 0 then if x> y then z: =x else z: =y else if x< y then z: =x else z: =y; writeln (‘z=’, z: 6: 3); программасы экранғ а қ андай нә тиже шығ арады? а) z=-7.130 б) z=-4.000 в) z=-4.0000000000E+00 г) z=-7.13 д) z=-4 Бақ ылау сұ рақ тары: 1. Delphi-де анық талғ ан файлдар типі. 2. Файлдармен байланыс тә сілдері (тура, файлдық айнымалы). 3. Файлдық айнымалы. 4. Файлдық айнымалыны дискілік файлмен қ алай байланыстыруғ а болады? 5. Типтелген файлдарды қ ұ ру, ашу, жабу процедуралары. 6. Типтелген файлдар компоненттеріне тура енуді ұ йымдастыру. 7. Мә тіндік файлдарды қ ұ ру, ашу, жабу процедуралары. 8. Типтелмеген файлдарды қ ұ ру, ашу, жабу процедуралары. 9. Файлдарды жоғ ары жылдамдық пен кө шіру. 10. Файлдармен жұ мыс қ ателерін бақ ылау.
|