|
Сурет. Код терезесіDate: 2014-02-27; view: 1005. Кесте
Ескерту. 1.FloatToStrF функциясының форматын (f) ffExponent түрінде жазуға болады.Ол санды экспонеттік етіп дөңгелектейді.
2.Delphi-де Турбо Паскальда қолданылатын Str(x,s) және оған кері Val (s,x,code) типті түрлендіру процедураларын да пайдалану мүмкін. Мысалы, x=25 болса, Str (x,s) процедурасының орындалу нәтижесі: s=’25’; s=’54’ болса Val(s,x, code)процедурасының орындалу нәтижесі :x=54, code=0.
1.5.2. Берілгендерді шығару. ShowMessage процедурасы
Delphi-де берілгендерді ShowMessage (мәліметті көрсету) процедурасының терезесіне шығаруға болады. Процедураның (оператордың) жазылу түрі:
ShowMessage(s); Мұндағы s-жолдық типті өрнек. Егер ол сандық типті болса, оны жолдық типке түрлендіру үшін s аргументінің орнына типті түрлендірудің сәйкес функциясын енгізу керек. Мысалы, s нақты типті сан болса, оны шығару терезесінде көрсету операторының мынадай турде жазылуы мүмкін: ShowMessage(FloatToStr(s)); не ShowMessage(FloatToStrF(s,ffgeneral,7,3));
Жүйе соңғы операторды оқып шығып, жеті цифрдан тұратын нақты санды символдық типте шығару терезесінде көрсетеді. 1.5.3. Қарапайым пограмма құру Процедуралар оқиғалық және жалпы (оқиғаға байланыссыз) болып екі түрге бөлінеді. Программа олардың жиынтығынан тұруы мүмкін. Қарапайым жағдайда ол бір процедурадан ғана тұрады. Мысал. х=4,8 үшін у=2х+5/3 функциясының мәнін есептеу керек. х мәні Input Boxтерезесі арқылы енгізілсін, у мәні ShowMessage терезесінде көрсетілсін.
Form1терезесі көрінеді. 2.Форманы екі рет шерту. Unit1.pas атаулы модуль құрылады да, код терезесінде OnCreate оқиғасынөңдеуішпроцедурасыныңдайындамасыкөрінеді. (1.7-сурет)
Дайындаманы қасиеттер терезесін пайдаланып орнату: Дайындаманы орнатудың екінші тәсілі де бар: – Form1-дің қасиеттер терезесінен Events (оқиғалар) қосымша бетін ашып ,On Create оқиғасын таңдау ; -оның оң жағына FormCreate атауын енгізіп, КҚ пернесін басу. Код терезесінің бірінші жолында көрінгені процедура тақырыбы. Мұндағы: Procedure- процедураның басталуын білдіретін кілттік сөз: TForm1.FormCreate- форманы екі рет шерту оқиғасына жауап ретінде құрылатын процедураның құрама атауы. Ол нүкте арқылы ажыратылған екі бөлімнен құралған: біріншісі –класс атауы (TForm1) (Delphi-де әрқайсысы ұқсас толық бір іс-әрекетті орындай алатын программалар тобы класс деп, олардың біреуі класс данасы делінеді. Класс ұғымы жөнінде кеңірек баяндалған 1.12-тақырыпты қараңыз); екіншісі – процедураның өз аты. Ол объект және оқиға атауларының қосындысынан тұрады (оқиға атауының алдында On қосымшасы жазылмайды). Компонеттер палитрасына енгізілген әр компонет жеке класқа тиісті, ол формаға кірістірілгенде сандық индекс қосылып, класс атауын алады. Барлық клас атауларын Т әріпінен бастап жазу келісілген. Мысалы, Т Form1 –Tform стандартты класының үлгісі бойынша құрылған клас атау, мұндағы 1- оның индекісі. 1.7-суретте көрінген дайындаманың жоғарғы жағы ашылса, форма екі рет шертілгенде құрылғанда Unit 1. Pas модулін тип сипаттамсы мынадай түрде жазылғаны көрінеді (мұнда ескеретін жайт : құрылатын оқиғаны өңдеуіш процедурасының тақырыбы автоматты түрде модульдің сипаттамасына жазылып қойылады. (формаға орнатылған компонеттерде осында сипатталып қойылады , мысалы, төменде енгізілген ескертуді қараңыз)): type TForm1=class(TForm) Procedure FormCreate (Sender:TOject); Private {private declaration} Public {public declaration } end; var Form1:TForm1; Типке енгізілген TForm1=class(TForm) жолы стандартты TForm класының үлгісі бойынша құрылған (TForm класы тудырған) TForm1 ішкі класын анықтайды; FormCreate – процедура атауы; Sender (жіберуші) – оқиға көзі болатын объектіні (TOject) бойында сақтайтын шақыру параметрі (айнымалы). Олар жазылған қатар процедура тақырыбы делінеді. Sender параметрін программа мәтіні ішінде шақыру да мүмкін. Мысалы, өңдеуішті шақыру Button1 түймесін шертудің жауабы болатынын тексеру үшін оған, If Sender= Button1 Then … шартты операторын енгізсе болғаны. Ескерту. Егер формада Button1, Edit1, Label1 компонеттері орнатылып, Button1 түймесі екі рет шертілген болса, онда модуль терезесінде типті сипаттау автоматты түрде мынадай етіп жазылған болар еді: type TForm1= class (T Form) Button1 : TButton ; Label1 : TLabel; Edit1 : T Edit; Procedure button 1 click (sender: TObject); End; мұндағы Button 1: T button сипаттамасы Button 1 компонентінің стандартты Button класына тиісті (клас данасы ) екенін көрсету, т.с.с. Жоғарғы сипаттамасы автаматты түрде пайда болуынан шығатын қортынды: Delphi-де форма мен код арасында тығыз байланыс орнатылған. Формада орнатылған автоматты түрде озгертеді және керісінше; түйме формадан өшірілген де оның сипаттамасы алынып тасталады. Тапсырма. Ескерту ішінде көрсетілген іс әрекеттерді орындап, жоғарыда жазылған типті модульде (Unit.pas) сипатталған типпен салыстырып шығыңыз. 3. 1.7 –суретте көрсетілген процедура дайындамасына процедура денесін жазу. Procedura Tform1 . FormCreate(sender: TObject ); Var x,y: real; x1:string; Begin X1:=inputBox(“,’x=’,”); X:=strToFloat(X1); y:=3*x+5/3; ShowMessage(Float ToStr (y)); End; Бұл – форманың екі рет шерту(On Create) оқиғасына сәйкес жазылған оқиғаны өңдей процедурасы. Көбінесе программа әр қайсысы нақты оқиғаны өңдеуге арналған процедуралар мен ағымдық іс әрекеттерді орындайтын процедуралар жиынтығынан тұрады. Жиынтыққа қосалқы программа – процедура, функсиялардың енгізілуіде мүмкін. Прогаммалаушы программада қандай оқиғалар өңделуге тиіс екенін өзі шешеді. 4. Іс қосу командасын беру. Ол RUN-Run командасы арқылы не Ғ9 клавишін басу арқылы іске асырылады. Аспаптар панелінде оған арналған RUN түймесіде бар . 5. Терезеге 4,8 мәнін енгізіп, OK түймесін шерту. Project1 тақырыбы және ішіне функцияның символдық мәні жазылған шығару терезесі көрінеді(1,8-сурет). Оның ОК түймесі шертілсе терезе жабылады. Ескерту. Егер проект сақталған болса, терезе тақырыбында осы проект аты көрінеді.
Тапсырма. Процедураға ShowMessage(Float ToStr (y,ffgeneral, 7, 3)) операторын енгізіп, программаны іске қосыңыз. Шығару терезесінде қандай нәтиже көрінеді?
1.8-сурет. Нәтиже енгізілген шығару терезесі
Ескерту. 1. Программада Input Box функциясы жазылған қатарды меншіктеу командасы (х:=4,8;) алмастыруға болады. Ол кезде одан соңғы жазылған типті өзгерту командасын алып тастау қажет. 2. Нәтижелік мәнді шығаратын ShowMessage терезесінен басқа Message Dlg атаулы терезе де бар ол кітапқа енгізілмеген. 1.5.4. Берілгендерді формада енгізу және шығару.
|