Главная страница
Контакты

    Басты бет


Бексарыұлы Мұратбек delphi визуалды бағдарламалау жүйесі әдістемелік оқу құралы

жүктеу 1.27 Mb.



жүктеу 1.27 Mb.
бет5/10
Дата22.10.2017
өлшемі1.27 Mb.

Бексарыұлы Мұратбек delphi визуалды бағдарламалау жүйесі әдістемелік оқу құралы


1   2   3   4   5   6   7   8   9   10

if (not Assigned(Form2)) then // Пішіннің бар-//жоқтығын тексеру
       Form2:=Form2.Create(Self);// Пішінді құру
    Form2.Show; // (немесе Form2.ShowModal) //Пішінді //көрсету
Енді жай пішінмен Модалды пішіннің айырмашылығын қарастырайық. Жай пішін экранда орналасқан барлық пішіндердің бірінен біріне еркін көшуге мүмкіндік береді.

Ал модалдық пішін оны шақырған сәтте жобаның пішіндері арасындағы көшуді жабады да, жабылғанша тек сол ашылған пішінмен ғана жұмыс істейсіз.

Оған қарамастан екінші пішінді шақыруға әрекет жасасаңыз, бағдарлама мынадай сауал шығарады:
вызов дополнительной формы

Ол сауалдың мазмұны мынау: Form1 пішіні Unit 2 модулінде жарияланған Form2 пішінін шақырып тұр, бірақ ол пішін қолданылған модульдер тізімінде жоқ.

Сіз оны қосқыңыз келе ме?

Мұны директива {$R *.dfm} алдындағы модулдің басына мына бағдарлама үзігін uses Unit2;


қосу арқылы шешу керек. Негізінде мұны компиляция алдында «қолмен» қосуға да болар еді. Сонда сауал да болмайды. Бірақ соның қажеті бар ма?

Мұнда «Yes»» деп жауап қайтарып және F9 – ды басамыз.

Алдымен пішінге оны жабу операциясын енгіземіз. Мұны бірнеше тәсілмен істеуге болады. Батырманы алып, оған « Закрыть» деп жазып, сосын OnClick өңдеуішке былай жазамыз:
Form2.Close; // негізінде жай ғана Close;

Бұл оператор оны пішін менюінен шақырған кезде жұмыс істейді, әрине меню (Standard астарындағы MainMenu компоненті) оған енгізілген жағдайда . Бұл туралы алда әңгімелейтін боламыз.

Бізге енді модальды пішінге жататын пішіндердің жабылу тәсілдерін қарастыруымыз керек. Оның сұхбат жасауға арналған терезелерінде сұрақтарға жауап беруді қажет етеді.

Ол үшін пішінге мына : «Иә», «Жоқ» «Болдырмау» және т.б жауаптарға сәйкес батырмаларды орналастыру қажет. Әр батырманың mrYes, mrNo, mrCansel және басқа мәндерге ие ModalResult қасиеті бар. Мұнда таңдалған батырманың ModalResult мәні пішіннің осы қасиетіне беріледі. Бұл қасиет объектілер инспекторынан көруге болатын пішін қасиетінің тізімінде жоқ, бірақ оны бағдарламалық түрде таба аламыз. («Form2» деп жазып нүкте қой, сосын шыққан тізімнен ізде)

ModalResult қасиетінің mrNone мәнінен бөлек мәні бар батырмасын бассақ ( тіпті батырмада өңдеуші болмаса да) ол пішіннің жабылуына әкеледі. Осыдан кейін пішіннің осы қасиетін таңдау арқылы, тұтынушының қойылған сұраққа қандай жауап бергенін анықтауға болады:
procedure Tform1.Button1Click(Sender: Tobject);
begin
Form2.ShowModal;
if Form2.ModalResult=mrYes then // Бұл оператор Form2 //жабылған соң ғана қолжетімді болады
  Form1.Caption:='Тұтынушы оң жауап берді!';
end;

Осы мысалдан көріп отырғанымыздай, бір пішіннен басқа пішіннің қасиеттеріне , сол сияқты олардың компоненттеріне қатынас жасау үшін сол пішіннің аты көрсетілуі қажет екен. Оған қоса біз оның жұмысын сипаттайтын модулде қолданылатын мәліметтерге де қол жеткізе аламыз. Ол үшін де модулдің аты көрсетілуі қажет. Мысалы, Unit2 модуліндегі X айнымалымына қатынас жасау үшін: Unit2.X деп жазамыз.

Көбінесе бағдарламада пішінді жабу сәтінде белгілі бір операциялар орындалуы тиіс. Ол пішіннің OnClose оқиға өңдеуішінде жасалады. Ал енді пішінді жабуды болдырмауды қарастырайық. Осы мақсатта OnCloseQuery оқиға өңдеуішін қолдануға болады. Ол өңдеуіштегі CanClose логикалық айнымалысының қабылдайтын мәніне байланысты. Пішін CanClose:=True; мәнін қабылдағанда ғана жабылады.

Егер біз мынадай код жазсақ:


procedure Tform1.FormCloseQuery(Sender: Tobject; var CanClose: Boolean);
begin
  CanClose:=False;
end;
онда тұтынушы бағдарламаны тіпті де жаба алмайды, тек оны Windows-тың Міндеттер Диспетчерін/Диспетчер задач/ қолданып қана орындай алады.

12. Ішкі бағдарламаларды құру және оларды қолдану
Ішкі бағдарламалар – бұл арнайы операцияларды орындау үшін қызмет ететін процедуралар мен функциялар. Delphi-дің көптеген стандартты ішкі бағдарламалары бар, соған қарамастан кейде мәліметтермен жиі қайталанатын операцияларды орындауға арналған, өзгеріп тұруы мүмкін өзіндік бағдарламалар құруға тура келеді.

Жалпылай айтқанда, бағдарламалаудың « жоғарыдан төмен»деген әдісі бар. Бұл әдіс бойынша есеп ішкі бағдарламалар түрінде өрнектеліп, бірнеше қарапайым есептерге бөлінеді.

Бөлінген есептердің өзі қажетіне қарай бағдарламалаушы алдына қойылған міндет қажетті деңгейге дейін жеңілдетілгенше (барынша қарапайым түрге келгенше ) бөліне береді. Осындай ішкі бағдарламалар процедуралар мен функцияларға жатады.

Бұлардың екеуімен де бірдей нәтижеге жетуге болады. Алайда олардың өзара айырмашылықтары бар. Процедура қажетті операцияларды орындап, тізімдегі өз параметрлеріне нәтижелерін қайтарып береді. Функция да осы айтылғандарды орындап, оған қосымша нәтижені өзіне меншіктелген мәнге қайтарады. Сонымен функция неғұрлым әмбебап объект.

Ішкі бағдарламаларды сипаттау Procedure немесе function түйінді сөздерінен басталып, содан соң жақшаға алынған оның параметрлерінің тізімдері жазылады. Функция жағдайында әрі қарай қос нүкте қойылып, қайтарылған мәннің типі көрсетіледі. Соңында ( ; ) міндетті түрде қойылуы қажет. Ал ішкі бағдарламаның коды түгелімен логикалық жақшаның ішіне жазылады. Функция үшін кодта функция арқылы қайтарылған мән меншіктелуі қажет. Ішкі програмаларды жалпы түрде жазайық:


procedure Процедура_аты(параметрлері);
begin
 Процедура коды;
end;

   function Функция_аты(параметрлері): нәтиже_типі;
   begin
    Функция коды;
    Result:= нәтиже;
   end;

Осылай сипатталған ішкі бағдарламалар негізгі бағдарламаға ол орындалуға шақырылғанға дейін орналастырылуы тиіс. Бұл орындалмаған жағдайда компиляция кезінде « белгісіз идентификатор» деген хабарлама шығады. Ал оны бақылап отыру оңай емес. Бұдан шығатын жол – ол ішкі бағдарламалардың тақырыбын бағдарламаның барлық мәліметтерін сипаттайтын орынға орналастыру.

Мұндағы параметрлер - өзара үтірмен ажыратылған, қос нүктеден соң типі көрсетілген идентификаторлар тізімі.

Егер тізімде түрлі типтегі идентификаторлар бірнешеу болса, онда олар бір-бірінен (; ) арқылы ажыратылып жазылады. Бәрі де жалпы мәліметтерді сипаттаудағыдай. Бұларды формальды параметрлер дейді.

Ішкі бағдарлама шақырылғанда олар үтірден кейінгі сол типтегі параметрге ауысады.

Ішкі бағдарламада параметрлер болмауы да мүмкін, ол кезде олар негізгі бағдарламадағы мәліметтердің өзімен операциялар орындай береді.

Енді жергілікті мәліметтер ұғымын енгізу керек. Бұл мәліметтер ішкі програмаларды шақыру кезінде ғана болатын және пайдаланылатын айнымалылар, тұрақтылар мен ішкі бағдарламалар. Олар осы ішкі бағдарламада сипатталуы тиіс. Оның сипатталу орны – тақырып пен Begin түйінді сөзінің арасы. Жергілікті мәліметтердің аты бас тақырыптағы мәліметтер атымен бірдей болуы мүмкін, ол жағдайда жергілікті айнымалы қолданылады, бірақ одан бас тақырыптағы сол атпен берілген айнымалыға өзгеріс жасалмайды.

Жергілікті процедуралар мен функциялар да тек сол ішкі бағдарламаның ішінде ғана сипатталып, қолданыла алады. Айталық, екі санның қосындысын табу бағдарламасын жазу керек болсын дейік. Ол басқан кезде ішкі бағдарлама орындалатын Пішінге енгізілетін батырмадан (Button компоненті) және операндтарды енгізуге арналған екі енгізу жолынан (Edit компоненттері) тұрады.


программа суммирования двух чисел
Енді процедураны жазайық:

var
  Form1: TForm1;
  A, B, kosyndy: Integer;
procedure kos(A, B: Integer);
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
 A:=StrToInt(Edit1.Text);
 B:=StrToInt(Edit2.Text);
 Kos(A, B);
 Caption:=IntToStr(kosyndy);
end;

procedure kos (A, B: Integer);
begin
 kosyndy:=A+B;
end;
Мұнда процедура оны шақыруды ұйымдастыратын өңдеуіштен кейін орналасты және процедура тақырыбы мәліметтерді сипаттау блогына енгізілді. Бұл бағдарлама сол себептен орындалады. Бірақ оның орындалуы онша нақты емес сияқты.

Енді осы операцияларды функция көмегімен атқарайық:



var
  Form1: TForm1;
  A, B, kosyndy: Integer;
  function kos (A, B: Integer): Integer;
implementation
{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 A:=StrToInt(Edit1.Text);
 B:=StrToInt(Edit2.Text);
 kosyndy=kos(A, B);// бұл жерде ненің, қайдан //алынатындығы әлдеқайда түсінікті сияқты
 Caption:=IntToStr(kosyndy);
end;

function kos(A, B: Integer): Integer;
begin
 Result:=A+B;
end;

Делфи-де көлемі өте үлкен мәліметтер құрылымымен, мыс, бірнеше мың (одан да көп) элементтерден тұратын жиымдармен жұмыс істеудің ерекшеліктері бар. Міне осындай көлемдегі мәліметтерді ішкі бағдарламаға беру кезінде жүйе бұған көп уақыт пен ресурс шығындайды.

Сондықтан бұл кезде ішкі бағдарламаға олардың элементтерінің өз мәндері емес, айнымалы не тұрақтының атындағы сілтеме жіберілетін болады.

Ол өзіміз аты бойынша жібергіміз келген параметрлердің алдына var түйінді сөзінен бұрын жазу арқылы жүргізіледі.


function Kos(A, B: Integer; var Arr: array[1..1000000] of Integer): Integer;
Біздің ішкі бағдарлама мен батырманы басу өңдеуішінің сипаттамасына зер салсақ, онда өңдеуіштің аты алдында (ButtonClick) Tform1 тұрғанын көреміз. Сонымен Delphi ButtonClick- ті Form1 обьектісінің әдісі ретінде құрып тұр. Ал оның алдындағы Т әрпі оның тек обьект әдісі ғана емес, обьект класының әдісі екенін көрсетеді. Мұны көп тереңдетпей айтсақ, біздер енді процедуралар мен функцияларды Tform1 класының әдісі ретінде сипаттау арқылы класс обьектілерін олардың аттарын көрсетпей-ақ пайдалануға мүмкіндік аламыз, бұл бізге өте ыңғайлы. Сонымен бізге ішкі бағдарламада Пішінде орналасқан қандай да бір компонентті (мыс, Button1) пайдаланғымыз келсе, онда оны Form1.Button1.Width:=100; деп емес, енді былай жазамыз:

Button1.Width:=100;   //батырма ені

Мұнда оған қоса оның бірге қондырылған ішкі айнымалыларын (мыс, Sender обьектісі сияқты) пайдалануға мүмкіндік туады. Әрбір өңдеуіште бұл обьект шақырылатын ішкі бағдарлама көзін (біздің мысалда: Sender=Button1 қосынды табу көзін) көрсетеді.

Ішкі бағдарламаны класс әдісі ретінде сипаттай отырып, оны біз Delphi орналастырған – Tform1 класын сипаттау ішіне орналастыруымыз қажет. Button1Click процедурасының сипаттауы қайда орналасқанын қараңыз. Ол үшін Button1Click ішкі бағдарламаның ішіне меңзерді қойып, CTRL+SHIFT және меңзерді басқаратын «жоғары» немесе «төмен» батырмаларын бір уақытта басыңыз. Сонда біз ішкі бағдарламаның сипаттауына көшеміз, ал одан кері қайту үшін сол амалды тағы бір рет орындаңыз. Өз ішкі бағдарламаңыздың сипаттауын жаңа жолдың жанына қойсаңыз, онда TForm1 жазылмайтынын байқайсыз.
13. Delphi – дегі ерекше жағдайлар
Delphi – дегі ерекше жағдайлар тұрақты кездесіп тұрады. Ерекше жағдайлар деп нені айтамыз? Ол нәтижесінде қате пайда болатын және соның негізінде бағдарламаның орындалуы үзілетін жағдай. Мыс, нөлге бөлу – ерекше жағдайдың көп кездесетін түрінің бірі.

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

Бағдарламалаушы ерекше жағдайды бақылау үшін ол мүмкін болатын үзіндінің нұсқасын да, сол сияқты оның болуы мүмкін емес балама нұсқаны да дайындауы қажет. Сонда ерекше жағдайды бақылайтын оператор былай жазылар еді:
try
үзіндінің негізгі операторлары

excert

үзіндінің балама нұсқасы

end
Мұнда бағдарламаның негізгі бөлімін қамтитын оператордың try/excert бөлімі орындала бастайды. Осы бөлімнің қандай да бір операторында ерекше жағдай туа қалса, онда оның қалған операторлары орындалмай қалдырылады да, бөлімнің балама нұсқасы, яғни excert/end бөлігі орындалады. Ал егер бағдарламада ерекше жағдай байқалмаса, онда оның excert/end бөлігі қалдырылып кетеді.

Ерекше жағдайдың пайда болу/болмауына қарамастан, кодтың үзіндісі орындалуы қажет болған кейбір жағдайларда оны бақылап тексерудің тағы бір нұсқасын енгізуге болады:


try
   операторлар
finally
   қорытындылаушы әрекеттер
end;
Мұндағы негізгі операторлар дұрыс орындалуы да немесе ерекше жағдай туғызуы да мүмкін. Ал үзіндінің finally бөлігіндегі қорытындылаушы операторлар қандай жағдайда да орындалады.

14. Жолмен жұмыс
Delphi жүйесі жолдан тиісті ақпаратты ала отырып, оны өзімізге керек түрде бейнелеуге мүмкіндік береді. Бұл жүйеде жолды мынадай пішімдерге түрлендіруге болады. Олар:

  • Бүтін және жылжымалы нүктелі бөлшек түріндегі сандық пішім;

  • Уақыт мерзім, уақыт-мерзім пішімі;

  • Символдарды жоғарғы және төменгі регистрлерге түрлендіру;

  • Жолдарды салыстыру, жолдан іздеу жүргізу және ішкі жолдарға көшіру және т.б.

Delphi тікелей жолдармен жұмыста бір ғана, конкатенация, яғни біріктіру операциясын қолдайды. Бұл операция бір жолды басқа жолға біріктіреді:
var S, S1, S2: String;
begin
 S:=S1+S2;
end;

Мұндағы S – қорытқы жол, ал S1,S2 – жолдар. Жолдың ұзындығы, яғни саны Length(S: String) ішкі функциясы арқылы қайтарылады.

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

Жолды сандық пішімге және оны керісінше түрлендіру функциялары;

Есептеулерді жүргізу барысында мәліметтерді енгізу және оның нәтижелерін шығару үшін мына фунциялар қолданылады:

IntToStr(N: Integer): String функциясы – N бүтін санын жолға түрлендіреді.

StrToInt(S: String): Integer функциясы – S жолын бүтін санға түрлендіреді.

FloatToStr(X: Extended): String функциясы – Х жылжымалы нүктелі санын жолға түрлендіреді.

StrToFloat(S: String): Extended функциясы – S жолын жылжымалы нүктелі санға айналдырады.
Мерзім мен уақытты түрлендіру процедуралары мен функциялары

Алдымен солардың ағымдағы уақыт пен мерзім туралы ақпарат беретіндерін қарастырайық. Олар:

Now: TdateTime функциясы – ағымдағы мерзім мен уақытты қайтарады.

Now: TdateTime функциясы – ағымдағы мерзімді қайтарады.

Time: TdateTime функциясы – ағымдағы уақытты қайтарады.
Ал мына функциялар оларды құрайтын (жыл, ай, күн, апта күні, сағат, минут, секунд, миллисекунд) шамалармен жұмыс атқарады:

DayOfWeek(Date: TDateTime): Integer функциясы – ағымдағы апта күнінің нөмірін қайтарады, мыс: 1-жексенбі, 7-сенбі.

DecodeDate(Date: TDateTime; var Year, Month, Day: Word) процедурасы – Date мерзімге бөледі: мұнда,Year – жыл, Month – ай, Day – күн.

DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word) процедурасы – Time уақытқа бөледі: мұнда, Hour - сағат, Min - минут, Sec - секунд, Msec – миллисекунд.

EncodeDate(Year, Month, Day: Word): TdateTime функциясы – Year – жыл, Month – ай, Day – күн мәндерін TdateTime типінің мәндеріне біріктіреді.

EncodeTime(Hour, Min, Sec, MSec: Word): TdateTime функциясы – Hour - сағат, Min - минут, Sec - секунд, Msec – миллисекунд мәндерін TdateTime типінің мәндеріне біріктіреді.


Енді мерзім мен уақытты TDateTime пішімінен жолдық пішімге ауыстыратын функцияларды қарастырайық:

DateTimeToStr(DateTime: TDateTime): String функциясы – мерзім мен уақытты жолға түрлендіреді.


DateToStr(Date: TDateTime): String функциясы – мерзімді жолға түрлендіреді.

TimeToStr(Time: TDateTime): String функциясы – уақытты жолға түрлендіреді.


Мына функциялар қайтарылатын жолдардың параметрлерімен жұмыс атқарады:

AnsiLoverCase(const S: String): String функциясы – төменгі регистрге түрленген S жолын қайтарады.

AnsiUpperCase(const S: String): String функциясы – жоғарғы регистрге түрленген S жолын қайтарады.
Length(const S: String): Integer функциясы – S жолындағы символдар санын қайтарады.

Trim(const S: String): String функциясы – S жолдағы бастапқы және соңғы бос орындар мен басқарушы символдарды жояды

TrimLeft(const S: String): String функциясы - S жолдағы бастапқы бос орындар мен басқарушы символдарды жояды.
TrimRight(const S: String): String  функциясы - S жолдағы соңғы бос орындар мен басқарушы символдарды жояды.

Мына функциялар екі жолды өзара салыстырады:

AnsiCompareStr(const S1, S2: String): Integer функциясы - S1 мен S2 жолдарын символдар регистрін есепке ала отырып салыстырады. Егер S1S2 болса, >0 мәнін қайтарады.

AnsiCompareText(const S1, S2: String): Integer  функциясы - S1 мен S2 жолдарын символдар регистрін ескермей-ақ салыстырады. Егер S1S2 болса, >0 мәнін қайтарады.


Ал мына функциялар ағымдағы жолдардан алынып тасталатын немесе қосылатын ішкі жолдарды іздестіреді:

Pos(Substr: String; Str: String): Integer функциясы – Str жолына SubStr-дің алғашқы ену позициясын(индексін) қайтарады. Егер Str жолында SubStr жоқ болса, оған 0 қайтарылады.

Insert(Source: String; var S: String; Index: Integer): Integer функциясы – S жолына нөмірі Index-ке тең символдан басталатын Source жолын қосады.
Delete(var S: String; Index, Count: Integer): Integer функциясы - S жолынан нөмірі Index-ке тең символдан басталатын және Count –қа дейінгі символдардан тұратын ішкі жолды жояды.
Мынау жол бөліктерін көшіретін функция:

Copy(S: String; Index, Count: Integer): Integer  функциясы - S жолына нөмірі Index-ке тең символдан басталатын және Count –қа дейінгі символдардан тұратын ішкі жолды қайтарады.

Бұдан басқа осы функцияны үтірден кейін қажетті цифрлар саны бар бүтін емес сандарды экранға шығаруға пайдалануға болады. Ол үшін, әуелі Real пішімді сандардан жол алайық. Содан соң Pos функциясы арқылы осы жолдағы үтір позициясын тауып, оған қажетті символ санын қосамыз және соны нәтижеге көшіреміз.
Мынау соның дайын функциясы:

function RealToStr(X: Real; Count: Integer): String; //Count - үтірден кейінгі цифр саны


var S: String;
    N: Integer;
begin
  S:=FloatToStr(X); // үтірден кейінгі ұзын цифрлар тізбегі
  N:=Pos(',', S);   //жолдағы үтір позициясы
  N:=N+Count;   // үтірден кейінгі қажетті таңбалар саны //берілген жолдың ұзындығын есептеу
  Result:=Copy(S, 1, N);
end;

II. Бағдарлама құрып үйрену

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



Ескерту

Delphi ортасында бағдарламалау жұмыстарын қазақ тілінде орындау үшін пішінді ашқан бойда (Form1) ең алдымен Object Inspector терезесінің Properties астарында Font қасиетінің тұсындағы (...) көп нүктеде шертеміз, сонда ашылған Шрифт терезесінде қазақ қарпін (біздің жағдайда: Times New Roman) таңдауымыз керек. Міне осы әрекеттен соң ғана пішіндегі барлық жазбалар қазақ тілінде жазылатын болады, ал ол қаріпті үлкейтіп-кішірейту жұмысы сол Шрифт терезесінде бұрынғыша атқарылады.


Практикалық жұмыстар
1. «Менің бірінші бағдарламам»
Жұмыстың мақсаты – мына әрекеттерді орындайтын бағдарлама құру:

1. Бағдарламаны іске қосқанда төмендегі терезе көрінеді.




1-сурет.
2. Бағдарламадан шығу үшін тышқанмен «Жабу» батырмасын шерту қажет.

Бағдарламаны жүзеге асыру жоспарының сипаттамасы

1. Жаңа жоба ашу.

2. Пішінге Label белгісі мен Button батырмасын орнату.

3. Мына кестеде жазылған әрекеттерді орындау:

1 - кесте.


Белгі-ленген нысан

Object Inspector терезесінің астары

Қасиеттің аты/ Оқиғаның аты

Атқарылатын әрекет

Form1

Properties

Caption(жазу)

Пішінге «Жоба1» атын орнату

Color(Түс)

clmoneyGreen түсін таңдау

Label1


(Standard астары)


Properties


Caption


«Менің алғашқы бағдарла-мам» жазу мәтінін енгізу

AutoSize

(Автотаңдау)



Қасиеттің мәніне: True енгізу

Font - Color

clYellow түсін таңдау

Button1

(Standard астары)



Properties

Caption

Батырмаға «Жабу» атын орнату

Events

OnClick

Close;

4.Жобаны сақтаңыз, оны іске қосып, жұмыс істеуін тексеріңіз.

2. Консольдық қолданба құру

Жұмыстың мақсаты: Консольдық бағдарлама құру.

1.Бас мәзірден File > New > Other (Файл> Жаңа > Басқа) командасын орындап, шыққан сұхбат терезедегі New астарынан Console Application (Консольдық қолданба) белгісін таңдау.





2-сурет

2.OK батырмасын басқан соң экран енді мына түрде көрінеді:





3-сурет

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




4-сурет

1   2   3   4   5   6   7   8   9   10


жүктеу 1.27 Mb.