Delphi ортасының мүмкіндіктері

Автор работы: Пользователь скрыл имя, 05 Июня 2013 в 19:45, курсовая работа

Описание работы

Delphi негізінде қосымшаларды жылдам құру концепциясы (RAD – Rapid Application Development) жатқандықтан,жинақта Windows-та жұмыс істейтін қосымшаларды құруға арналған визуальды компоненттерді,формаларды, оқиғаларды,қасиеттерді пайдалануға көп көңіл бөлінген.Сонымен қатар жиі қолданылатын визуальды компоненттерді пайдаланып,Delphi ортасында бағдарламалауды үйрену мәселелері қамтылған.

Файлы: 1 файл

Курсавой информатика.docx

— 76.04 Кб (Скачать файл)

     - оқиға;

     - оқиғаны өңдеу процедурасы.

 

         1.3.3. Оқиға және оқиғаны өңдеу процедурасы

 

 

          Құрылған форманың түрі қосымшаның қалай жұмыс істейтіндігін көрсетеді. Қолданушы редакциялау өрісіне (поля) бастапқы мәліметтерді енгізу керек және сол есептің шығу жолына байланысты  Есептеу   (Вычислить) батырмасын басу керек. Осы көрсетілген командалық  батырманы шерту – Windows-та  Оқиға (событие) деп аталады.

          Оқиға (Event) – бағдарлама  жұмыс істеп жатқан уақыт аралығында орындалады.

           Delphi-де әрбір оқиғаға арнайы ат беріледі.

            Мысалы,тінтуір (мышь) батырмасын бір рет шерту – Onclick оқиғасы, ал тінтуір батырмасын екі рет шерту OnDbClick  оқиғасы деп аталады.

           Delphi – де оқиғаға деген реакция оқиғаны өңдеу процедурасы сияқты жүзеге асырылады. Осылайша пайдаланушының әрекеттеріне сай бағдарлама кейбір қызметтерді атқаруы керек, ол үшін бағдарлама жасаушы оқиғаға сәйкес өңдеу процедурасын жазуы қажет. Оқығаны өңдеудің көпшілік бөлігін компонент атқаратынын ескеруіміз керек. Сондықтан бағдарлама жасаушы оқиғаны өңдеу процедурасын тек оқиға реакциясы стандарттан ерекше болса немесе анықталмаған жағдайда ғана өрісіне өңдеуі керек. Мысалы, есептің шарты бойынша Edit өрісіне енгізілетін символдарға шек қойылмаса , онда OnKeyPress оқиғаны өңдеу процедурасын жазудың қажеті жоқ, өйткені бағдарлама жұмысы кезінде оқиғаны стандартты өңдеу процедурасы пайдаланылады.

          Оқиғаны өңдеу процедурасын құруға кірісу үшін, алдымен  Object Inspector  терезесінен компонент және осы терезеден  Events (оқиға) салымын таңдау керек.

         Events  салымының сол жақ бағанасында таңдалған компонент (объект) қабылдайтын оқиға аттары көрсетілген. Егер оқиғаны өңдеу процедурасы анықталса, онда оқиға атының жанында процедура аты оң жақ бағанада көрсетіледі.

         Оқиғаны өңдеу функциясын құру үшін тінтуір батырмасын оқиғаға сәйкес өңдеу процедурасы атына екі рет шерту керек. Нәтижесінде код редакторы терезесі ашылып, онда оқиғаны өңдеу функциясының аты пайда болады.Delphi оқиғаны өңдеу функциясына 2 бөліктен тұратын ат беріледі. Атаудың бірінші бөлігі объектіні (компонентті) құрайтын формаға теңестіріледі. Екінші бөлігі объект немесе оқиға атына теңестіріледі. Біздің мысалда форма аты – Form1, командалық батырма аты – Button1, ал оқиға – Click болып беріледі.

        Код  редакторы терезесіндегі begin және end сөздерінің арасына оқиғаны өңдеу функциясын жүзеге асыруға қажетті нұсқауларды жазуға болады. Төмендегі бағдарламада Есептеу командалық батырма үшін  OnClick оқиғаны өңдеу функциясының мәтіні келтірілген. Бағдарламаның қалай көрсетілгеніне назар аударыңыздар. Код редакторы терезесінде басты сөздердің жалпы көрінісі – қалың қаріппен, түсініктемелер – курсивті қаріппе берілген. Бағдарламалау ережелеріне сай бағдарлама нұсқаулары шегініс арқылы бөлек-бөлек жіктеліп жазылған. Бұл әдіс бағдарламаны түсінуге ыңғайлы болмақ.

        // Есептеу пернесін басу.

       Procedure  TForm1. Button 1Click (Sender: Tobject);

       Var

       dist:integer; / / арақашықтық, метр

      t: real; / / уақыт,секунд

    

    min:intrer; / / уақыт,минут

      sek: integer; / / уақыт,секунд

      v: real; / / жылдамдық

      begin

    / / енгізу өрісінен бастапқы мәндерді алу

      dist:=StrToInt ( Edit1. Text );

      t:=StrToFloat ( Edit2. Text );

 

      / / алдын-ала түрлендіру

     min:=Trunc( t ); / / минут саны – бұл t  санының бүтін бөлігі  

      sek:=Trunc( t*100 ) mod 100; / / секунд саны – t  санының бөлшек бөлігі

      / / есептеу

     v:=( dist/1000 ) / (min*60+sek ) / 3600 );

      / / нәтиже шығару

     Label4. Caption:= ‘Арақашықтық:’ + Edit1.Text + ‘ м’ + #13 +

     ‘Уақыт:’ + IntToStr( min )+ ‘мин’ +

      IntToStr( sek ) + ‘сек’ + #13+

     ‘Жылдамдық:’+ FloatToStrF(v,ffFixed,4,2)+

     ‘км / сағ’;

     end;

   

          Button1Click функциясы жылджамдықты есептеп, нәтижесін  label4  өрісіне шығарады. Бастапқы мәндер Edit1 және Edit2 редакциялау өзісінен енгізіледі.  Text қасиеті бағдарламаның жұмысы кезінде қолданушы енгізетін символдар қатарын қамтиды. Бағдарлама дұрыс жұмыс істеу үшін бұл қатарда тек сандар болуы керек. Қатар мәндері түгел сандарға ауысу үшін бағдарламада StrToInt және StrToFloat функциялары қолданылады. Бұл функциялардың атқаратын қызметі қатарды санға түрлендіру болып табылады. StrToInt функциясы осы функцияға парметрлер ретінде берілген қатардағы символдврды тексереді (Edit1. Text - Edit1 өрісінің мәні), егер барлық символдар дұрыс болса, онда санды қайтарады. Бұл сан  dist айнымалысына жазылады. Дәл осылайша StrToFloat функциясы жұмыс жасайды. Ол  Edit2 өрісінің құрамындағыларына сәйкес бөлшек санды қайтарады. Бұл сан  t  айнымалысына келіп жазылады.

            Dist және t айнымалымалыларына бастапқы мәндер  жазылғаннан кейін дайындық жұмыстары және есептеулер жүргізіледі.

           Алдымен Truns функциясын қолдану арқылы санның бөлшек бөлігі «лақтырылып тасталады», t  айнымалысының бүтін бөлігі белгіленеді, бұл –минут саны. Truns( t*100 ) mod 100 өрнегінің мәні секундтар саны болмақ. Бұл өрнек былайша есептеледі.

           Бірінші t саны 100-ге көбейтіледі. t –айнымалысын 100-ге көбейткендегі  шыққан нәтиженің бүтін бөлігі Truns функциясы арқылы қайтарылады. Осылайша алынған сан 100- ге модуль бойынша бөлінеді. Модуль бойынша бөлу нәтижесі – осы бөлуден қалған  қалдық болмақ.

           Барлық деректер дайын болған соң есептеу басталады.

          Жылдамдық  км/сағатпен көрсетілгендіктен, метр мен минут арқылы берілген уақыт пен арақашықтық өлшемдері километрге және сағатқа түрлендіріледі. Есептелген жылдамдық мәні Caption  қасиетіне мәндерді меншіктеу жолымен label4 өрісінде шығарылатын болады. Қатардағы сандарды түрлендіру үшін IntToStr және FloatToStr  функциясы қолданылады. Аяқтау батырмасын  басу нәтижесінде бағдарлама жұмысты тоқтады, ол үшін экраннан бағдарламаның басты терезесін жауып, алып тастау керек. Ол Close көмегімен жүзеге асырылады. Аяқтау батырмасы үшін  onClick  оқиғасын  өңдеу төмендегі бағдарламада берілген:

      

      / / Аяқтау батырмасн басу

     Procedure TForm1. Button2Click  (Sender: Tobject );

    begin

    Form1.Close / / бағдарламаның басты терезесін жабу

    End;

 

 

 

 

 

 

 

          1.4. Код редакторы

 

 

          Код редакторы бағдарламау тіліндегі кілттік сөздерді  қалың қаріппен балгілейді. Бұл бағдарлама құрылымын түсінікті тілде беру үшін қолданылады. Кілттік сөздермен қатар, код редакторы түсініктемелерді курсивті қаріппен белгілеуге де мүмкіндік береді.

 

           1.4.1. Түсінектеме жүйесі

 

 

          Мәтінді теру кезінде редактор процедуралар мен функциялар және объектілердің қасиеттері мен тәсілдері жөнінде анықтамалық ақпараттар шығарып береді. Мысалы, егер біз редактор терезесінде ShowMessage жазсақ, онда экран бетінде ShowMessage функциясының параметрлері көрсетілген терезе шығады. Параметрлердің бірі қалың қаріппен белгіленеді, міне, осылай редактор бағдарламашыға қандай параметрді енгізу керектігін білдіретін түсінік береді. Параметрлер мен үтірді енгізген соң көмекші терезеде келесі параметр белгіленіп тұрады. Осылайша барлық параметрлер толық көрсетіліп болғанға дейін осы әрекеттер орындала бермек. Код редакторы объектілері үшін әдістер мен қасиеттер тізімі шығарылады. Бағдарламашы объект аты мен нүктені жазып болысымен, көмекші терезеде осы объектінің әдістер мен қасиеттер тізімі пайда болады. Керекті элементке өту үшін меңзердің орнын ауыстыру қажет немесе кілтжиыннан қасиет немесе әдістің алдыңғы бірнеше әріптерін терсе жеткілікті. Тізімнің керек элементі таңдалып  <Enter>  пернесін басқан соң ғана бағдарлама мәтініне керек қасиет немесе әдістер қосылады. Көмекші терезенің бағдарлама  мәтінін дайындауда көп көмегі бар. Егер бағдарлама жазған уақытта көмекші терезе пайда болмаса,онда бағдарлама жасаушы қателесті (процедура немесе функция аты дұрыс жазылмаған) деген сөз.

 

           1.4.2. Анықтама  жүйесі

 

 

          Бағдарламаны теру барысында  тілдің құрылымы жөнініде немесе функциялар туралы анықтамалар алуға болады. Ол үшін код редакторы  терезесінде анықтама алу керек сөзді теріп, сонан соң «F1»  пернесін басу қажет.

         Ақпараттық анықтаманы Help менюінен Delphi Help  командасын таңдау арқылы алуға болады.

         Бұл кезде экранда анықтамалық жүйенің стандартты терезесі пайда болады. Терезедегі  «тақырыптық нұсқағыш» салымында анықтама алумен байланысты тақырыпты анықтайтын кілттік сөзді енгізіңіз. Кілттік сөз ретінде функцияның, процедуралардың, қасиеттердің немесе әдістер аттарының алғашқы бірнеше әріпін енгізсе жеткілікті.

 

         1.5. Жоба құрылымы

 

 

          Delphi жобасы – бағдарламалық бірлік жиынын  (модульдерді) қамтиды.

         Басты деп аталатын модульдердің бірі – бағдарламаның орындалуы  басталатын нұсқауды қамтиды. Осы нұсқаудан бағдарламаның орындалуы басталады.

          Қосымшаның басты модулі толықтай  Delphi-де қалыптасады.

          Басты модуль файлының кеңейтілуі  .dpr болып белгіленеді. Қосымшаның басты модулінің мәтінін көру үшін  Project менюінен View Source  командасын таңдау қажет. Төмендегі бағдарлама жүгіру жылдамдығын есептеуге арналған.

    Program vrun;

    Uses

    Forms,

    Vrun1 in ‘vrun1.pas’ {Form1};

    

     {$R*.res}

 

      begin

      Application. Initialize;

      Application. createForm (TForm1, Form1);

      Application.Run;

      End.

         Басты модуль program сөзінен басталады, онан соң жоба атына сәйкес болатын бағдарлама атын бару қажет.

         Жоба аты жобаны сақтау кезінде беріледі де, ол компилятор арқылы құрылатын бағдарламаны – орындамалық файл  атын анықтайды. Әрмен қарай Uses сөзіненкейін қолданылатын  модульдер аты жазылады: Forms кітапханалық моддулі және vrun1.pas формасының модулі.

         Түсініктеме ұқсас ($R*.RES) қатары – бұл директива, компиляторға ресурстар файлын қосады. Ресурстар файлы қосымшалар ресурстарынан тұрады: пиктограммалар, меңзерлер, биттік образдар және тағы басқалар. Жұлдызша белгісі – ресурстар файлының аты жоба файлымен бірдей екенін білдіреді, бірақ кеңейтілуі  .res.

          Ресурстар файлы мәтіндік файл емес, сондықтан оны мәтін редакторының көмегімен қарауға мүмкінгдік жоқ. Ресурстар файлымен жұмыс үшін арнайы бағдарламалар қолданылады, мысалы Resours  Workshop. Сонымен қатар Delphi құрамына кіретін Image Editor утилитін де пайдалануға болады, оған қатынас  Tools  менюіндегі  Image Eitor командасын таңдау арқылы ұйымдастырылады.

          Басты модульдің орындалатын бөлігі begin және end нұсқауларының арасында орналасқан.

          Орындамалық бөлім нұсқауы қосымшаны инициализациялауды және стартты терезені экранға шығаруды қамтамасыз етеді.форма модулін

         Басты модульмен қатар, әрбір бағдарлама өзінде ең болмағанда бір форма модулін қамтиды.

          Онда қосымша стандартты формасына түсінік пен оның  жұмысын  қолдайтын процедуралар сақталады.

         Delphi-дегі әрбір формаға өзіндік модуль сәйкес келеді.

      Төменде  жүгіріс жылдамдығын есептеу  бағдарламасы модулінің мәтіні  берілген.

      

      

 

        Unit vrun1;

        Interfase

       

         Uses

         Windows, Messages, SysUtils, Variants, Cl asses, Graphics, Controls, Forms, Dialogs, StdCtrls;

        

          Type

          TForm1=class (TForm)

           Edit1: TEdit;

           Edit2: TEdit;

           Label1: Tlabel;

           Label2: Tlabel;

           Label3: Tlabel;

           Label4: Tlabel;

           Button1: Tbutton;

           Button2: Tbutton;

           Procedure Button1Click (Sender: Tobject);

           Procedure Button2Click (Sender: Tobject);

          

          Private

              {Prevate declarations}

          public

               {Public declarations}

          end;

          var

          Form1: Tform1;

          Implementation

          {$R*.dfm}

         

          / /есептеу батырмасын басу

          Procedure Tform1.Button1Click (Sender: Tobject);

          var

         

          dist: integer; / /арақашықтық, метр

          t: real; / / уақыт, бөлшек,сандар түрінде

         

           min: integer; / / уақыт, минут

           sek: integer; / / уақыт, секунд

           v:real; / / жылдамдық

 

           begin

           / / енгізу өрісінен бастапқы деректерді алу

          dist:=StrTolnt(Edit1.Text);

           t:= StrToFloat(Edit2. Text);

          

           / /  алдын ала түрлендіру

          min:= Truns(t); / / минут саны – t санының бүтін бөлігі

Информация о работе Delphi ортасының мүмкіндіктері