Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Объектілі-бағдарланған программалау






Программалаудың осы бағ ытының негізін салушылардың бірі Алан Кэйдің баяндамасында Объектті-бағ ытталғ ан программалаудың мынадай принциптері берілген:

1. Барлығ ы объект болып саналады.

2. Объекттер бір-бірімен хабарлама жіберу арқ ылы ә рекеттеседі.

3. Хабарлама- қ имылғ а келтіру ү шін керекті аргументтер жиынтығ ымен қ амтылғ ан ә рекетті жасауғ а сұ рау.

4. Ә рбір объекттің онда басқ а объекттер орналасқ ан тә уелсіз жадысы бар.

5. Ә рбір объект объекттердің жалпы қ асиеттерін білдіретін кластың ө кілі болып саналады.

6. Класта объекттің іс-ә рекеті беріледі. Бір кластың барлық объекттері бірдей ә рекеттерді жасай алады.

7. Кластар жалпығ а бірдей, бірің ғ ай иерархиялық ағ аш тә різдес қ ұ рылым ретінде ұ йымдастырылғ ан. Кейбір класт объекттерінің жадысы мен іс-ә рекеті иерархиялық ағ аштың тө менгі сатысында орналысқ ан ә рекеттерді қ айталайды.

Осылайша Программалаудың объекті-бағ ытталғ ан стилінің негізінде объект тү сінігі жатыр, ал мә ні «объект=» мә ліметтер + процедура» формуласымен анық талады. Ә рбір объект ө зінде мә ліметтердің кейбір қ ұ рылымы мен ә дістеме деп аталатын тек оғ ан ғ ана ашылатын, осы мә ліметтерді ө ң деу процедураларын интеграциялайды. Бір объектте мә ліметтер мен процедуралардың бірігуі инкапсуляция деп аталады.

 

1.1 Визуальды программалау негізі. Инкапсуляциялау, полиморфизм, мұ рагерлеу.

Дә ріс конспектісі:

Қ асиеттер, ә дістер жә не жағ дайларды ө ң деушілер

Ә рбір объекттің бір топ қ асиеттері бар. Қ асиеттер аталық класстан мұ рагерленген тү рде

болуы, сол сияқ ты қ ұ рылатын объектке ерекше тү рде қ осылғ ан болуы мү мкін. Объекттің

барлық қ асиеттерінің тізімдері мен олардың мә ндері Список всех свойств объекта и их

значений отображается в диалоговом окне Object Inspector сұ хбаттық терезеде кө рініп

тұ рады.

Программалық модульде қ асиетке сілтеме келесі тү рде жазылады:

Объекттің аты. Қ асиеті

Ә діс дегеніміз, ол - бір объект тү рінде берілетін процедура немесе функция. Программалық

модульде ә діске сілтеме Объект аты тү рінде жазылады.

Ә діс.

Delphi-қ осымша, кез келген Windows-қ осымша сияқ ты, Windows ортасында орындалады,

жә не кез келген Windows-қ осымшасы сияқ ты, оғ ан арналғ ан жағ дайлар туралы хабарламалар

алып тұ рады. Қ осымшаның жұ мысын басқ ару, алынғ ан хабарламаларды ө ң деу арқ ылы

орындалады. Жағ дайларды ө ң деу коды бар ә дістер, жағ дайларды ө ң деушілер (Event Handler)

- деп аталады.

Delphi жағ дайларды ө ң деуші процедураларды автоматты тү рде генерациялайды - кез келген

компонентке арналғ ан жағ айларды ө ң деушілер. Жә не де жағ дайларды ө ң деушінің аты -компоненттің аты мен жағ дайдың атауынан қ ұ растырылады (мысалы, EditlClick).

Жағ дайларды ө ң деушінің аты автоматты тү рде форма класының атымен (аталық класының

атымен) квалфикацияланады. Мысалы: TForm1.ButtonlClick(Sender: TObject);.

Ә рбір компонент ү шін бір стандартты жағ дай қ арастырылғ ан. Мысалы, командалық

батырма ү шін, қ осқ ыш, тізім, енгізу алаң ы ү шін ол - это событие Click жағ дайы, ал форма

ү шін - FormCreate жағ дайы.

Стандартты жағ дайды ө ң деушіні хабарлап, сипаттауды модульге автоматты тү рде қ осу

ү шін, форма компонентінде немесе форманың ө зінде тышқ анмен екі рет шертсе болғ аны.

Жағ дайдың хабарлауы модульдің interface-секциясына қ осылады да, жағ дайдың бос

сипаттамасы - модульдің implementation-секциясына қ осылады. Ә рі қ арай код редакторында,

бос сипатамада қ ойылғ ан begin...end блогында; тек жағ дайды ө ң деушінің кодтарын енгізсе

болғ аны.

Мысалы:

procedure TForml.ButtonlClick(Sender: TObject);

begin

{кодты енгізетін орын}

end;

Кез келген жағ дайдың ө ң деушісін егізу ү шін, Объекттер Инспекторында Events бетін

таң дап, ондағ ы жағ дай атының оң жағ ында орналасқ ан енгізу алаң ында тышқ анды екі рет

шертсе болғ аны. Бұ л енгізу алаң ы кү рделі қ ұ рыымды тізім терзесі тү рінде беріледі - оғ ан,

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

процедура атын таң дауғ а болады. Бұ ндай амалдар, керек болғ ан жағ дайда, бірден бірнеше

жағ дайларғ а бір процедураны (жағ дайларды ө ң деуші) таң дап, анық тауғ а болады.

ОБЪЕКТІЛІ-БАҒ ЫТТАЛҒ АН ПРОГРАММАЛАУ

Delphi объектілі-бағ ытталғ ан программалау ортасы болып табылады. Программалау тілі

ретінде Object Pascal тілі пайдаланылады. Бұ л лекция сізді Delphi программалау ортасында

пайдаланылатын объектілі-бағ ытталғ ан программалаудың негізгі тү сініктерімен жә не

терминологиясымен таныстырады.

Негізгі тү сініктер

Объектілі-бағ ытталғ ан программалау класстардың терминдерінде программалауғ а мү мкіндік

береді:

• Класстарды анық тайды;

• Бар класстардың негізінде, жаң а жә не туынды (ұ рпақ тық) класстарды конструкциялайды

(біріктіреді);

• Класстың (класс экземплярларының) қ ұ рамына кіреті объекттер қ ұ руғ а мү мкіндік береді.

Класс объекттің қ асиеттері (атрибуттары) мен ә дістерін (жағ дайларды ө ң деушілермен қ оса)

сипаттайды.

Объектті қ ұ рғ анда ол ө зінің классының қ ұ рылымы (айнымалылары) мен іс ә рекетін

(ә дісін) мұ рагерлейді.

Ө з кезегінде, потомок (мұ рагер), пройзводный (туынды) немесе бала класс (ішкі класс), деп

аталатын класстың ө зі де, бө тен, ата-анасы (предкалары) негізінде, олардың қ ұ рылымы мен

мінез қ ұ лқ ын ө зіне мұ рагерлей отырып, қ ұ рыла алады. Delphi-дегі кез келген компонент

(басқ ару элементі) немесе объект ылғ и да класс экземпляры (данасы) болып саналады.

Программадағ ы объект - объектті типтің айнымалысын білдіреді. Delphi -дің ә рбір

компоненті ү шін Tcomponent-тен мұ рагерленетін ө зінің классы болады.

Барлық объекттердің ата-аналары болып, компоненттерді қ оса, Tobject классы табылады.

Мұ рагерлеу (Наследование) бар класстардың терминіндегі жаң а класстарын анық тауғ а

мү мкіндік береді.

Инкапсуляциялау - ол, қ орғ алғ ан, яғ ни, қ асиеттері мен ә дістерін алу ө ң деушімен

анық талатын «ену нү ктесі» арқ ылы рұ қ сат етілетін, объекттер қ ұ ру. Басқ аша айтқ анда,

инкапсуляциялау, дегеніміз - ол ө ң деушіге қ асиеттер мен ә дістердің белгілі бір жиынын, сол

класс ішінде анық талатын объекттердің іс ә рекеттері мен қ асиеттерін басқ аруғ а арнап беру.

Полиморфизм дегеніміз - ол ә р тү рлі объекттердің бірдей жағ дайларды ә р тү рлі тү рде

қ абылдау мү мкіндігі.

Тілдің синтаксисі объектілі-бағ ытталғ ан программалауғ а арналғ ан, жалпығ а бірдей

қ абылданғ ан нотацияны: объекттің атын шақ ыру ү шін объекттің қ асиетіне сілтеу қ ұ руғ а

арналғ ан объекттің аты мен қ асиетін немесе объекттің ә дісінің атын қ олдайды. Ә рі бұ л

жағ дайда, объект_аты қ арапайым, немесе Квалификацияланғ ан сілтемеден тұ рады.

Квалификацияланғ ан сілтеме - нү ктемен бө лінген, ата-аналық объекттердің атынан тұ рады.

Сұ рақ тар

1.Объектілі бағ ытталғ ан программалау негізі?

2. ОБП негізгінің принциптері.

3. Инкапсуляциялау.

4. Полиморфизм.

5. Мұ рагерлеу.

Ә дебиет:

1. М.Ж.Балабекова, К.Н.Малайсарова, А.И.Тажигулова «Практикум по ОООП DELPHI.7.0.

Алматы, 2004г. изд. Центр МОиН РК.

2. Сейдалиева Г.О. «Программирование на DELPHI в примерах» Изд. КазНАУ, Алматы,

2003г.

№3 Дә ріс. Объектілерді қ ұ ру жә не пайдалану.

Класс, объект тү сініктері. Ө рістер, ә дістер, объектілердің қ асиеттері. Объекттерді қ ұ ру

жә не жою. Конструкторлар мен деконструкторлар. Динамикалық объекттер.

Дә ріс конспектісі:

Жаң а класты қ ұ ру

Типті хабарлау

Interfase секциясында жаң а класты қ ұ ру ү шін мына модульді жазу керек:

Type

TNewClass = class (Parent'Class);

end;

Object Pascal тілінің модулінде класстар саны ерікті тү рде сипатталуы мү мкін. Delphi-де

қ ұ рылатын жобаның ә рбір формасы жеке модульдермен сипатталады (жаң а форма қ ұ рылғ ан

кезде, автоматты тү рде қ ұ рылатын). Бұ л модуль Form компоненті ү шін жаң а класс

сипаттайды. Алдымен айтылмай-ақ, VCL -кітапханасындағ ы TForm сыртқ ы класынан

мұ рагерленетін TForml класы қ ұ рылады. Ол модульде автоматты тү рде келесідей болып

жазылады:

{Классты хабарла}

type

TForml = class(TForm)

private

{Айнымалылар мен ә дістердің private-сын хабарлау }

public

{ Бә рін бірдей алуғ а болатын айнымалылар мен ә дістерді хабарлау}

end;

var

Forml: TForml; {Класстың экземплярын қ ұ ру}

implementation

{Ә дісті іске асыратын секция}

end.

Класстың ә дісі мен айнымалысын хабарлау

Класстың айнымалылары олардың кө рсетілу аумағ ын анық тайтын (public, private,

protected, published, automated) алу модификаторларының соң ынан кө рсетіледі. Алу

модификаторлары айнымалының кө рсетілу аумағ ын анық тайды да, жә не олар " Object

Pascal" бө лімінде толық тырылып қ арастырылалды.

Published алу модификаторларының соң ынан кө рсетілетін қ асиеттер, барлығ ына бірдей

алуғ а болатындай болып, Объекттер Инспекторында кө рсетіліп тұ рады.

Айнымалы атынан кейін, немесе ү тірмен бө лінген аттар тізімінен кейін, символ мен

айнымалының типі кө рсетіледі. Тип болып Delphi-дің базалық типінің бірі (мысалы, Integer,

Real, Char, Boolean) таң далады, сонымен қ атар, туынды типтер де таң далануы мү мкін,

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

«объекті тип» деп аталады. Класстардың ә дістерін хабарлауда ә дістің атының алдында

function немесе procedure кілттік сө зі кө рсетіледі. Функция ү шін де, сол сияқ ты,

функцияның атынан кейін бір символ жіберіп, жауапты алып қ айта шығ атын мә ннің типі

кө рсетіледі.

Мысалы:

type

TNewClass = class (ParentClass)

(Public алу модификаторы}

public

Varl: Integer;

Var2, Var3: TVarTypeClass;

procedure PI;

function Fl: Integer;

end;

Класстың хабарламасының қ ұ рамына тек айнымалылар мен ә дістердің хабарлауы

кіреді. Функциялар мен процедуралардың ә дістерінің іске асырылуы модульдің

implementation-секциясында жазылады.

Класстармен жұ мыс

Қ ұ растырылып жатқ ан форманың негізінде қ ұ рылатын ә рбір модуль, негізінде TForm

классынан туындайтын класстың сипаттамасын береді. Формада орналасатын кез келген

компонент, сол сияқ ты бір берілген класстың экземпляры болып саналады. Delphi класстары

бір берілген иерархиялық бұ тақ ты қ ұ рады. Delphi-дің VCL-кітапханасының класстарын

базалық класстар, - деп атаймыз. Бұ л иерархиялық бұ тақ тың кез келген компоненттің

берілген бір классының тү пкі каталогы TObject болады. Ұ рпақ -класстарының иерархиясын

Exploring Classes терезесінен кө руге болады. Ол терезеге ө ту ү шін View| Browser меню

командасын орындаса болғ аны, немесе Shift+Ctrl+B батырмаларын басса болғ аны.

2.1 Суретте Exploring Classes терезесінің Classes беті кө рсетілген. Онда TForml классының

мұ рагерлеу иерархиялық бұ тағ ы кө рсетілген. Теререзенің оң жағ ында Scope, Inheritance,

References-тің ү ш бетінен тұ ратын тақ та (панель) орналасқ ан. Scope беті класстың сол жақ

тақ тасында белгіленген объекттердің, айнымалылар мен ә дістердің бұ тақ тә різдес

диаграммасын кө рсетеді. Жә не де бұ л жағ дайда Inherited тармағ ы ата-аналық класстың

жә не ұ рпақ -класстың аттарынан тұ рады. Inheritance беті сол жақ тақ тада таң далып,

белгіленген классқ а арналғ ан ата-аналық классынан басталғ ан класстар иерархиясының ішкі

бұ тағ ынан тұ рады.

References бетінде ішінде берілген класстың аты кездесетін, барлық модульдердің аттары

мен қ атарлар нө мірін тануғ а болады.

2.1 сурет.

Класстарды қ арап шығ уғ а арналғ ан терезе

Жобағ а туынды класстардың ө зіндік сипаттамаларын қ осу ү шін, бө лек модуль қ ұ рып, сол

модуьдің interface-секциясына класстың барлық хабарламаларын жазып қ ойғ ан тиімді болып

саналады.

Delphi кітапханасының барлық VCL классы Delphi7\Source\VCL каталогындағ ы Object Pascal

модульдерінде орналасқ ан топтарғ а бө лінген.

Кітапхананың файлын кө ру ү шін каталогпен файл атын таң дап, File|Open командасын

орындаса болғ аны.

C: \Piogiam Files\Boiland\Delphi7\Source\VCL\bultons.pas

2.2 сурет

Scope ішкі

бетінде орналасқ ан VCL-кітапханасының Buttons модуліне арналғ ан программа кодының

текрезесі

2.3 сурет

Inheritance ішкі бетінде орналасқ ан VCL-кітапханасының Buttons модуліне арналғ ан

программа кодының текрезесі

Buttons.pas модулінің TBitBtn батырмасы классын хабарлау мысалын келтірейік:

(TBitBtn батырмасы классының хабарламасы қ ысқ артылып берілген)

type

TBitBtn = class(TButton)

private

FCanvas: TCanvas;

FGlyph: Pointer;

FStyle: TButtonStyle;

FKind: TBitBtnKind;

FLayout: TButtonLayout;

FSpacing: Integer;

IsFocused: Boolean;

FModifiedGlyph: Boolean;

procedure Drawltem(const DrawItemStruct: TDrawItemStruct);

procedure SetGlyph(Value: TBitmap);

function GetGlyph: TBitmap;

public

constructor Create(AOwner: TCoraponent); override;

destructor Destroy; override;

procedure Click; override;

published

property Action;

property Caption stored IsCustomCaption;.property Default stored IsCustom;

property Enabled;

property Glyph: TBitmap read GetGlyph write SetGlyph stored IsCustom;

property ShowHint;

property Style: TButtonStyle read FStyle write SetStyle default bsAutoDetect;

property Spacing: Integer read FSpacing write SetSpacing default 4;

property TabOrder;

property TabStop;

property Visible;

property OnEnter;

property OnExit;

end;

Property кілттік сө зі класстың қ арапайым алаң дарынан (айнамалыларынан) ерекше, объект

қ асиеттерін алуды бақ ылауды қ амтамасыз ететін, read жә не/немесе write алу спецфикаторы

бар, қ асиетін білдіреді.

Object Pascal тілінде ерекшелермен жұ мыс жасауғ а арналғ ан келесідей операторлар

ендірілген:

Raise – ерекшелер объектісін қ ұ руғ а арналғ ан;

Try..Except - белгілі бір ерекшелерді ө ң деу блоктарын анық тауғ а арналғ ан.

Try…Finally – барлық ерекшелерді ө ң деудің бір блогын анық тауғ а арналғ ан.

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

Except немесе Finally сө здерінің элементтерінен кейін ерекшелерді ө ң деу блоктары

орналасады. Біздің программаның елеулі кемістігі бар: егер енгізу алаң ында санның орнына,

мысалғ а айтқ анда, " Вася" сө зін енгізсек, программа қ ате туралы хабар беріп, " жабылып"

қ алады (тексерің із!). Ол тү сінікті – ө йткені FloatToStr функциясы " Вася" сө зін бө лшек санғ а

айналдыра алмай қ алады. Delphi-де TRY..EXCEPT..END операторының кө мегімен

программада қ ателер барын тексеріп отыруғ а арналғ ан ө те сыпайы механизм бар.

TRY..EXCEPT..END операторы қ ұ рамы бойынша, екі бө ліктен тұ рады. Біріншісі – ол опера-торлар қ атары, бұ л операторлар қ атары TRY жә не EXCEPT арасында кө рсетіліп, ерекше

жағ дайлар болуы мү мкін блок, - деп аталады. Екінші бө лімі - ол ерекшелерді ө ң деу on типі_

ерекшелер операторы.

Оның жалпы тү рі келесідей:

TRY

// Мына жерде қ ате болуы мү мкін

EXCEPT

Егер қ ате пайда болса, онда осы командалар орындалады

END;

Осы оперторды біздің процедурағ а енгізіп кө рейік:

procedure TForm1.Button1Click(Sender: TObject);

var a, b, c: real;

begin

try

a: =StrToFloat(LabeledEdit1.Text);

b: =StrToFloat(LabeledEdit2.Text);

c: =SQR(a+b)

except

Label1.Caption: =’Деректер дұ рыс емес’;

Exit

end;

Label1.Caption: =FoatToStr(c)

end;

Exit операторы бү кіл процедурадан кү ні бұ рын шығ у жолын шақ ырады. Егер ол болмағ ан

жағ дайда Label1.Caption: =FloatToStr(c) операторы бә рібір орындалар еді, ө йткені оның try

операторымен ешқ андай байланысы жоқ.

№4 Дә ріс. DELPHI-ге кіріспе.

2.1 DELPHI ортасы. Компоненттер палитрасы. Форма терезесі. Объекттер

инспекторы. Кодты редактірлеу терезесі.

Дә ріс конспектісі:

Delphi - ол, қ олданбалы программалар мен қ осымшалар қ ұ растырылатын ө ң деудің

интеграцияланғ ан ортасы - Ө ИО (IDE – Integrated Development Environment). Шынымен де

ол, ө зінің қ ұ рамына пайдаланушының программаларын-жобаларын қ ұ растыруғ а арналғ ан

кө птеген пайдалы қ ұ рал-жабдық тар мен дайын компоненттерді біріктерген.

Delphi – программаларды қ ұ растыруғ а арналғ ан визуалды орта. Бұ л, ә рбір

программаның сыртқ ы пішіні (оның «беті», немесе интерфейсі) белгілі бір жиынның ішінен

алынғ ан қ ұ рама элементтерді жылжытып орналастырып отыру арқ ылы қ ұ растырылады, -дегенді білдіреді. Бұ ндай жобалу балаларғ а арналғ ан конструктрдан кә дімгідей кө зге

жағ ымды қ ұ рылғ ылар орната алатын адамның да қ олынан келетін іс. Ә рине, бұ ндай

қ ұ рылғ ылар «тіріліп» іске қ осылу ү шін тағ ы бір нә рсе ойлап табу керек – іс-қ имылын

ұ йымдастыратын пограмма жазу керек.

Delphi-дің кешендік программалау тілі болып, объектілі-бағ ытталғ ан Паскаль - Object Pascal

табылады.

DELPHI РОГРАММАЛАУ ОРТАСЫНЫҢ

НЕГІЗГІ Қ Ұ РАМА БӨ ЛІКТЕРІ

Тө менде Delphi-дің негізгі қ ұ рама бө ліктері келтірілген:

• Формалар дизайнері (Form Designer)

• Программаның алғ ашғ ы мә тінін ө ң деу терезесі (Editor Windows)

• Компоненттер палитрасы (Component Palette)

• Объекттер Инспекторы (Object Inspector)

• Объекттер тізімін кө ріп шығ у (Object Tree View)

• Анық тама (On-line help)

Ә рине, Delphi-дің Сізге, программа мен программалау ортасын дә лірек баптауғ а керек

болатын, қ ұ рал-саймандар сызғ ышы сияқ ты, жү йелік меню сияқ ты, жә не де басқ а кө птеген

бө ліктері сияқ ты, ө зге де маң ызды қ ұ рама бө ліктері бар.

Мысалды қ арастыра отырып, программалауды ү йренеміз

Жү гіру жылдамдығ ын есептеу программасы негізінде визуалды жобалау жә не

жағ дайлы программалау технологиясын кө рсете отырып, негізгі тү сініктер мен терминдер

ендіріледі.

Жұ мыстың басы

Кә дімгі жолмен, яғ ни Программы Главного меню бө ліміндегі Borland Delphi 7 пунктін

таң дап, одан Delphi 7-ні шерту арқ ылы Delphi-ді іске қ осамыз. (1.1 сурет).

Delphi-ді ісе қ осқ аннан кейінгі экранның тү рі ерекше болады (1.2 сурет). Бір терезенің

орнына, экранда бірден бес трезе пайда болады:

Бас терезе (Delphi 7);

Алғ ашқ ы форма терезесі (Form 1);

Объекттер қ асиеттерін редактірлеу терезесі (Object Inspector (Объекттер инспекторы));

Объекттер тізімін қ арап шығ у терезесі (Object Tree View (Объекттер бұ тағ ын кө ру));

Кодты редактірлеу терезесі (Unit1.pas).

Кодты редактірлеу терезесі, толығ ымен дерлік, Алғ ашқ ы форма терезесімен жабылып

тұ р. Бас терезеде (1.3 сурет): командалар менюі, қ ұ рал-саймандар тақ тасы жә не

компоненттер палитрасы - орналасқ ан.

1.1 сурет Delphi-ді іске қ осу

1.2 сурет Delphi-ді іске қ осқ аннан кейінгі экранның тү рі

Object Inspector терезесі (1.5 сурет) – объекттер терезесінің мә ндерін редактірлеуге

арналғ ан объекттер қ асиеттерін редактірлеу терезесі. Визуалды жобалау

терминалогиясында объекттер дегеніміз, – ол сұ хбаттық терзелер жә не басқ ару элементтері

(енгізу жә не шығ ару алаң дары, басқ ару батырмалары, қ осқ ыштар жә не т.б.). Объекттер

қ асиеттері дегеніміз, - ол объекттің тү рін, орналасуын жә не іс ә рекетін анық тайтын

мінездемелері.

Мысалы, Width жә не Height қ асиеттері - форманың ө лшемдерін білдіреді (ұ зындығ ы мен

биіктігін), Top жә не Left қ асиеттері – форманың экрандағ ы орналасуын, Caption қ асиеті –

тақ ырып қ атарының мә тінін.

1.3 сурет Delphi-дің бас терезесі

Командалар менюі

Қ ұ рал-саймандар панелі Компоненттер палитрасы

Программалық қ амсыздандыруды: жү йелік (ЖПҚ) жә не

қ олданбалы (Қ ПҚ)-деп екіге бө лу қ арастырылғ ан. ЖПҚ – ОЖ-ні

қ амтитын барлық программалар. Қ алғ ан программаларды

қ олданбалы, - деп атау келісілген. Қ ысқ артып айтқ анда барлық

қ олданбалы программаларды - Қ осышалар - деп атайды.

Ескерту:

1.4 сурет Алғ ашқ ы форма терезесі – бұ л ө ң делетін қ осымшаның

Редактор терезесінде сіз программаны басқ ару логикасын қ ұ расыз.

Delphi-дің программистері уақ ыттарының кө бісін Форма Дизайнері (алғ ашқ ы форма)

мен программа кодын Редактірлеу терезесі (қ ысқ а тү рде Редактор деп атайды) арасында,

олардың бірінен біріне ауысып отырып, ө ткізеді. Жұ мысты бастамас бұ рын, осы ең негізгі

екі элементті танып білуге болатынын анық тап алайық. Форма Дизайнері 1.6.1-ші суретте,

Редактор терезесі - 1.6.2-ші суретте кө рсетілген.

Форма терезесін жылжытып қ ойып, кө руге болатын Кодты Редактірлеу терезесінде

(1.6.2 сурет), программа текстін теру керек. Жаң а жоба қ ұ ру жұ мысының басында бұ л кодты

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

Delphi-дегі форма дизайнерінің пайдалану кезіндегі тү сініктілігі мен қ арапайымдылығ ы

сонша, программаның визуалды интерфейсін қ ұ ру бала ойынына ұ қ сап кетеді. Форма

Дизайнері ең басында сіз компоненттер палитрасынан таң дап алғ ан ә ртү лі объекттермен

толтырылатын, бір бос терезеден тұ рады.

Форма Дизайнерінің сонша маң ыздылығ ына қ арамай, программистердің ең кө п уақ ыт

ө ткізетін жері болып Редактор терезесі табылады. Логика программаның қ уатты кү ші болып,

ал Редактор терезесі Сіз оны " кодтайтын" (сиқ ырлайтын) жер болып саналады.

Компоненттер Палитрасы (1.7 суретті қ араң ыз) бізге Форма Дизайнеріне алмастыру

ү шін, керекті объекттерді таң дауғ а мү мкіндік береді. Компоненттер Палитрасын пайдалану

ү шін тышқ анды объектердің бірінде шертіп, одан кейін оны екінші рет - Форма

Дизайнерінде шертсең із болғ аны. Одан кейін біз таң дағ ан объект жобалап жатқ ан трезеде

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

Компоненттер Палитрасы бетке бө лінген объектер жиынын пайдаланады. Палитраның

астында ішкі беттер жиыны - Standard, Additional, Dialogs жә не т.б. тұ рады. Егер сіз ішкі

беттердің бірінде тышқ анды шертсең із, онда сіз Компоненттер Палитрасының келесі бетіне

кө ше аласыз. Беттерге бө лу принципі Delphi программалау ортасында кең інен

пайдаланылады жә не оны ө з программаң ызда оң ай пайдалана аласыз. (Additional бетінде

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

Объекттің аты

Объекттің қ асиеті Қ асиеттерінің мә

1.5 сурет Объекттер қ асиеттерін

редактірлеу терезесі (Object Inspector

(Объекттер Инспекторы))

1.7 сурет Компоненттер Палитрасы - сіз формағ а қ ойылатын компонент таң дайтын жер.

Мысалы, TEdit компонентін сіз формағ а отналастырдың ыз дейік; Сіз оны бір орыннан

екінші орынғ а жылжыта аласыз. Сіз, сонымен қ атар, объекттің сыртқ ы сызығ ын, оның

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

амалдарды орындай аласыз. Бірақ та, программа орындалар кезде кө зге кө рінбейтін

компоненттер, мысалы: (TMenu типтес немесе TdataBase типтес) ө з формаларын ө згертпейді.

Форма Дизайнерінің сол жағ ында Объекттер Инспекторын кө ре аласыз (1.5 сурет).

Байқ асаң ыз, Объекттер Инспекторындағ ы ақ парат формада таң далғ ан объектке қ арай

ауысып отырады. Ә рбір компоненттің міндетті тү рде объект болып саналатынын тү сінген

жө н, жә не Сіз оның тү рі мен іс-ә рекетін Объекттер Инспекторы арқ ылы ө згерте аласыз.

Объекттер Инспекторы, ә рқ айысысын сол берілген комоненттің іс-ә рекетін анық тау

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

ол ө згерісті Объекттер Инспекторында орындай аласыз. Мысалы, TLabel компонентінің аты

мен ө лшемін сіз Caption, Left, Top, Height, жә не Width қ асиеттерін ө згерту арқ ылы орындай

аласыз. Қ асиеттер мен жағ дайлардың беттерін ауыстырып отыру ү шін сіз Объекттер

Инспекторының астың ғ ы жағ ындағ ы ішкі беттерді пайдалана аласы.

Жағ дайлар беті (Events) Редактормен байланысты; егер сіз кез келген пункттің оң

жағ ында орналасқ ан енгізу қ атарында тышқ анды екі рет шертсең із, онда таң далғ ан жағ дайғ а

сә йкес код Редакторде автоматты тү рде жазылады да, Редактордың ө зкурсорды меншіктеп

алады, ал сіз кодқ а таң далғ ан жағ дайдың ө ң деуші кодын қ осып жаза алатын мү мкіндік

аласыз.

Delphi ортасының ең маң ызды соң ғ ы бө лігі, ол- Анық тама (on-line help). Бұ л қ ұ рал-сайманды алу ү шін, жү йелік менюдегі Help бө лімін таң дап алып, одан кейін Contents-ті

таң даса болғ аны. Экранда бірден анық тама пайда боады.

Қ ұ рал-саймандық батырмалар

Қ ұ рал-саймандық батырмалар бас менюдің ө те маң ызды деген командаларын тез алуғ а

мү мкіндік береді. Функционалдық белгілері бойыша олар 7 топқ а бө лінген. Ә р-бір топ бө лек

1.6.1 сурет Объекттер тізімін кө руге

арналғ ан терезе

тақ таны алып тұ р. В табл. 1.1. Кестесінде стандартты батырмалар арқ ылы орындалатын

командалар сипатталғ ан.

1.1 Кесте. Delphi сймандар тақ тасының стандартты батырмалар жиыны

Батырмалар Сипаттамасы

Standard тобы

Объекттер қ оймасынан алуғ а мү мкіндік алып береді. FiLe ► New

► Other командасының эквиваленті

Бар файлды ашады. File► Ореn File Командасының эквиваленті

Файлды дискте сақ тайды. File ► Save File командасының эквиваленті

(тез орындау батырмалары — Ctrl+S)

Жобаның барлық файлдарын сақ тайды. File ► Save All командасының

эквиваленті.

Программаның бұ рын қ ұ рылғ ан жобасын ашады. File ► Open Project

командасының эквиваленті (тез орындау батырмалары — Ctrl+F11)

Жобағ а жаң а файл қ осады. Project ► Add to Project командасының

эквиваленті (тез орындау батырмалары — Shift+F11)

Жобадан файлды жояды. Project ► Remove from Project

командасының эквиваленті

View тобы

Ағ ымдағ ы жобамен байланысты модульдер тізімінен керекті модульді

таң дайды. View ► Units командасының эквиваленті (тез орындау

батырмалары — Ctrl +F12)

Ағ ымдағ ы жобамен байланысты формалар тізімінен керекті форманы

таң дайды. View ► Forms командасының эквиваленті (тез орындау

батырмалары — Shift +F12)

)

Форма терезесі мен программа терезесінің активтігін ауыстырады.

View ► Toggle Form/Unit командасының эквиваленті (тез орындау

батырмалары — F12)

Жаң а форма қ ұ рып, оны жобағ а қ осады. File ► New ► Form

командасының эквиваленті

Батырма Сипаттамасы

Debug тобы

Программаны компиляциялап, орындайды. Run ► Run командасының

эквиваленті (тез орындау батырмалары — F9)

Ө ң деліп жатқ ан программаның орындалуын тоқ татады. Run

► Program Pause командасының эквиваленті

Программалардың ішкі программаларымен бірге қ адамдық

трассировкасын орындайды. Run ► Trace Into командасының

эквиваленті (тез орындау батырмалары — F7)

Программалардың қ адамдық трассировкасын ішкі программалардың

трассировкасынсыз орындайды. Run ► Step Over командасының

эквиваленті (тез орындау батырмалары — F8)

Custom тобы

Кірістірілген анық тамалық қ ызметті алу жолын ашады. Help ► Delphi

Help командасының эквиваленті

Desktops тобы

Delphi-дің қ алғ ан терезелерін баптаудың мү мкін варианттарын

таң дауғ а арналғ ан тізім

Delphi терезелерінің ағ ымдағ ы баптауын сақ тайды

Ө ң деу режиміне сә йкес келетін терезе баптауларын таң дайды

Internet тобы

WebSnap технологиясы бойынша жаң а қ осымша қ ұ руды бастайды

(Интернетке арналғ ан қ осымшалар)

WebSnap қ осымшасының жаң а бетін қ ұ рады

WebSnap қ осымшасы деректерінің жаң а модулін қ ұ рады

 

1.1 Визуальды программалау негізі. Инкапсуляциялау, полиморфизм, мұ рагерлеу.

Дә ріс конспектісі:

Қ асиеттер, ә дістер жә не жағ дайларды ө ң деушілер

Ә рбір объекттің бір топ қ асиеттері бар. Қ асиеттер аталық класстан мұ рагерленген тү рде

болуы, сол сияқ ты қ ұ рылатын объектке ерекше тү рде қ осылғ ан болуы мү мкін. Объекттің

барлық қ асиеттерінің тізімдері мен олардың мә ндері Список всех свойств объекта и их

значений отображается в диалоговом окне Object Inspector сұ хбаттық терезеде кө рініп

тұ рады.

Программалық модульде қ асиетке сілтеме келесі тү рде жазылады:

Объекттің аты. Қ асиеті

Ә діс дегеніміз, ол - бір объект тү рінде берілетін процедура немесе функция. Программалық

модульде ә діске сілтеме Объект аты тү рінде жазылады.

Ә діс.

Delphi-қ осымша, кез келген Windows-қ осымша сияқ ты, Windows ортасында орындалады,

жә не кез келген Windows-қ осымшасы сияқ ты, оғ ан арналғ ан жағ дайлар туралы хабарламалар

алып тұ рады. Қ осымшаның жұ мысын басқ ару, алынғ ан хабарламаларды ө ң деу арқ ылы

орындалады. Жағ дайларды ө ң деу коды бар ә дістер, жағ дайларды ө ң деушілер (Event Handler)

- деп аталады.

Delphi жағ дайларды ө ң деуші процедураларды автоматты тү рде генерациялайды - кез келген

компонентке арналғ ан жағ айларды ө ң деушілер. Жә не де жағ дайларды ө ң деушінің аты -компоненттің аты мен жағ дайдың атауынан қ ұ растырылады (мысалы, EditlClick).

Жағ дайларды ө ң деушінің аты автоматты тү рде форма класының атымен (аталық класының

атымен) квалфикацияланады. Мысалы: TForm1.ButtonlClick(Sender: TObject);.

Ә рбір компонент ү шін бір стандартты жағ дай қ арастырылғ ан. Мысалы, командалық

батырма ү шін, қ осқ ыш, тізім, енгізу алаң ы ү шін ол - это событие Click жағ дайы, ал форма

ү шін - FormCreate жағ дайы.

Стандартты жағ дайды ө ң деушіні хабарлап, сипаттауды модульге автоматты тү рде қ осу

ү шін, форма компонентінде немесе форманың ө зінде тышқ анмен екі рет шертсе болғ аны.

Жағ дайдың хабарлауы модульдің interface-секциясына қ осылады да, жағ дайдың бос

сипаттамасы - модульдің implementation-секциясына қ осылады. Ә рі қ арай код редакторында,

бос сипатамада қ ойылғ ан begin...end блогында; тек жағ дайды ө ң деушінің кодтарын енгізсе

болғ аны.

Мысалы:

procedure TForml.ButtonlClick(Sender: TObject);

begin

{кодты енгізетін орын}

end;

Кез келген жағ дайдың ө ң деушісін егізу ү шін, Объекттер Инспекторында Events бетін

таң дап, ондағ ы жағ дай атының оң жағ ында орналасқ ан енгізу алаң ында тышқ анды екі рет

шертсе болғ аны. Бұ л енгізу алаң ы кү рделі қ ұ рыымды тізім терзесі тү рінде беріледі - оғ ан,

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

процедура атын таң дауғ а болады. Бұ ндай амалдар, керек болғ ан жағ дайда, бірден бірнеше

жағ дайларғ а бір процедураны (жағ дайларды ө ң деуші) таң дап, анық тауғ а болады.

ОБЪЕКТІЛІ-БАҒ ЫТТАЛҒ АН ПРОГРАММАЛАУ

Delphi объектілі-бағ ытталғ ан программалау ортасы болып табылады. Программалау тілі

ретінде Object Pascal тілі пайдаланылады. Бұ л лекция сізді Delphi программалау ортасында

пайдаланылатын объектілі-бағ ытталғ ан программалаудың негізгі тү сініктерімен жә не

терминологиясымен таныстырады.

Негізгі тү сініктер

Объектілі-бағ ытталғ ан программалау класстардың терминдерінде программалауғ а мү мкіндік

береді:

• Класстарды анық тайды;

• Бар класстардың негізінде, жаң а жә не туынды (ұ рпақ тық) класстарды конструкциялайды

(біріктіреді);

• Класстың (класс экземплярларының) қ ұ рамына кіреті объекттер қ ұ руғ а мү мкіндік береді.

Класс объекттің қ асиеттері (атрибуттары) мен ә дістерін (жағ дайларды ө ң деушілермен қ оса)

сипаттайды.

Объектті қ ұ рғ анда ол ө зінің классының қ ұ рылымы (айнымалылары) мен іс ә рекетін

(ә дісін) мұ рагерлейді.

Ө з кезегінде, потомок (мұ рагер), пройзводный (туынды) немесе бала класс (ішкі класс), деп

аталатын класстың ө зі де, бө тен, ата-анасы (предкалары) негізінде, олардың қ ұ рылымы мен

мінез қ ұ лқ ын ө зіне мұ рагерлей отырып, қ ұ рыла алады. Delphi-дегі кез келген компонент

(басқ ару элементі) немесе объект ылғ и да класс экземпляры (данасы) болып саналады.

Программадағ ы объект - объектті типтің айнымалысын білдіреді. Delphi -дің ә рбір

компоненті ү шін Tcomponent-тен мұ рагерленетін ө зінің классы болады.

Барлық объекттердің ата-аналары болып, компоненттерді қ оса, Tobject классы табылады.

Мұ рагерлеу (Наследование) бар класстардың терминіндегі жаң а класстарын анық тауғ а

мү мкіндік береді.

Инкапсуляциялау - ол, қ орғ алғ ан, яғ ни, қ асиеттері мен ә дістерін алу ө ң деушімен

анық талатын «ену нү ктесі» арқ ылы рұ қ сат етілетін, объекттер қ ұ ру. Басқ аша айтқ анда,

инкапсуляциялау, дегеніміз - ол ө ң деушіге қ асиеттер мен ә дістердің белгілі бір жиынын, сол

класс ішінде анық талатын объекттердің іс ә рекеттері мен қ асиеттерін басқ аруғ а арнап беру.

Полиморфизм дегеніміз - ол ә р тү рлі объекттердің бірдей жағ дайларды ә р тү рлі тү рде

қ абылдау мү мкіндігі.

Тілдің синтаксисі объектілі-бағ ытталғ ан программалауғ а арналғ ан, жалпығ а бірдей

қ абылданғ ан нотацияны: объекттің атын шақ ыру ү шін объекттің қ асиетіне сілтеу қ ұ руғ а

арналғ ан объекттің аты мен қ асиетін немесе объекттің ә дісінің атын қ олдайды. Ә рі бұ л

жағ дайда, объект_аты қ арапайым, немесе Квалификацияланғ ан сілтемеден тұ рады.

Квалификацияланғ ан сілтеме - нү ктемен бө лінген, ата-аналық объекттердің атынан тұ рады.

Сұ рақ тар

1.Объектілі бағ ытталғ ан программалау негізі?

2. ОБП негізгінің принциптері.

3. Инкапсуляциялау.

4. Полиморфизм.

5. Мұ рагерлеу.

Ә дебиет:

1. М.Ж.Балабекова, К.Н.Малайсарова, А.И.Тажигулова «Практикум по ОООП DELPHI.7.0.

Алматы, 2004г. изд. Центр МОиН РК.

2. Сейдалиева Г.О. «Программирование на DELPHI в примерах» Изд. КазНАУ, Алматы,

2003г.

№3 Дә ріс. Объектілерді қ ұ ру жә не пайдалану.

Класс, объект тү сініктері. Ө рістер, ә дістер, объектілердің қ асиеттері. Объекттерді қ ұ ру

жә не жою. Конструкторлар мен деконструкторлар. Динамикалық объекттер.

Дә ріс конспектісі:

Жаң а класты қ ұ ру

Типті хабарлау

Interfase секциясында жаң а класты қ ұ ру ү шін мына модульді жазу керек:

Type

TNewClass = class (Parent'Class);

end;

Object Pascal тілінің модулінде класстар саны ерікті тү рде сипатталуы мү мкін. Delphi-де

қ ұ рылатын жобаның ә рбір формасы жеке модульдермен сипатталады (жаң а форма қ ұ рылғ ан

кезде, автоматты тү рде қ ұ рылатын). Бұ л модуль Form компоненті ү шін жаң а класс

сипаттайды. Алдымен айтылмай-ақ, VCL -кітапханасындағ ы TForm сыртқ ы класынан

мұ рагерленетін TForml класы қ ұ рылады. Ол модульде автоматты тү рде келесідей болып

жазылады:

{Классты хабарла}

type

TForml = class(TForm)

private

{Айнымалылар мен ә дістердің private-сын хабарлау }

public

{ Бә рін бірдей алуғ а болатын айнымалылар мен ә дістерді хабарлау}

end;

var

Forml: TForml; {Класстың экземплярын қ ұ ру}

implementation

{Ә дісті іске асыратын секция}

end.

Класстың ә дісі мен айнымалысын хабарлау

Класстың айнымалылары олардың кө рсетілу аумағ ын анық тайтын (public, private,

protected, published, automated) алу модификаторларының соң ынан кө рсетіледі. Алу

модификаторлары айнымалының кө рсетілу аумағ ын анық тайды да, жә не олар " Object

Pascal" бө лімінде толық тырылып қ арастырылалды.

Published алу модификаторларының соң ынан кө рсетілетін қ асиеттер, барлығ ына бірдей

алуғ а болатындай болып, Объекттер Инспекторында кө рсетіліп тұ рады.

Айнымалы атынан кейін, немесе ү тірмен бө лінген аттар тізімінен кейін, символ мен

айнымалының типі кө рсетіледі. Тип болып Delphi-дің базалық типінің бірі (мысалы, Integer,

Real, Char, Boolean) таң далады, сонымен қ атар, туынды типтер де таң далануы мү мкін,

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

«объекті тип» деп аталады. Класстардың ә дістерін хабарлауда ә дістің атының алдында

function немесе procedure кілттік сө зі кө рсетіледі. Функция ү шін де, сол сияқ ты,

функцияның атынан кейін бір символ жіберіп, жауапты алып қ айта шығ атын мә ннің типі

кө рсетіледі.

Мысалы:

type

TNewClass = class (ParentClass)

(Public алу модификаторы}

public

Varl: Integer;

Var2, Var3: TVarTypeClass;

procedure PI;

function Fl: Integer;

end;

Класстың хабарламасының қ ұ рамына тек айнымалылар мен ә дістердің хабарлауы

кіреді. Функциялар мен процедуралардың ә дістерінің іске асырылуы модульдің

implementation-секциясында жазылады.

Класстармен жұ мыс

Қ ұ растырылып жатқ ан форманың негізінде қ ұ рылатын ә рбір модуль, негізінде TForm

классынан туындайтын класстың сипаттамасын береді. Формада орналасатын кез келген

компонент, сол сияқ ты бір берілген класстың экземпляры болып саналады. Delphi класстары

бір берілген иерархиялық бұ тақ ты қ ұ рады. Delphi-дің VCL-кітапханасының класстарын

базалық класстар, - деп атаймыз. Бұ л иерархиялық бұ тақ тың кез келген компоненттің

берілген бір классының тү пкі каталогы TObject болады. Ұ рпақ -класстарының иерархиясын

Exploring Classes терезесінен кө руге болады. Ол терезеге ө ту ү шін View| Browser меню

командасын орындаса болғ аны, немесе Shift+Ctrl+B батырмаларын басса болғ аны.

2.1 Суретте Exploring Classes терезесінің Classes беті кө рсетілген. Онда TForml классының

мұ рагерлеу иерархиялық бұ тағ ы кө рсетілген. Теререзенің оң жағ ында Scope, Inheritance,

References-тің ү ш бетінен тұ ратын тақ та (панель) орналасқ ан. Scope беті класстың сол жақ

тақ тасында белгіленген объекттердің, айнымалылар мен ә дістердің бұ тақ тә різдес

диаграммасын кө рсетеді. Жә не де бұ л жағ дайда Inherited тармағ ы ата-аналық класстың

жә не ұ рпақ -класстың аттарынан тұ рады. Inheritance беті сол жақ тақ тада таң далып,

белгіленген классқ а арналғ ан ата-аналық классынан басталғ ан класстар иерархиясының ішкі

бұ тағ ынан тұ рады.

References бетінде ішінде берілген класстың аты кездесетін, барлық модульдердің аттары

мен қ атарлар нө мірін тануғ а болады.

 

 

Жоғ ары дең гейлі программалау тілі процедуралық, логикалық, обьектілі бағ дарлы болып ү ш тү рге бө лінеді, соң ғ ы кезде Windows ортасында жарық қ а шық қ ан жә не ОБП негізінде қ ұ рылғ ан програмалау типтері.Visiual Basic(VB), Borlad Delphi, Borland CFF, ОБП-ның негізгі ұ ғ ымдары: обьект, оқ иғ а, қ асиет, ә діс, класс.Delphi программалау тілі кез келген қ осымшаны дайындауғ а болатын жылдамдығ ы тез, қ уатты тіл. Оның бірінші нұ сқ асы 1994 ж шығ ып, кейінгі жылдары оның бірте – бірте кең ейтілген 2, 3, 4, 5, 6, 7, 8 – гі нұ сқ аулары кө рінеді. Delphiде программа дайындау, программа мә зірін қ ұ ру, анимация, мультимедия процесін ұ йымдастыру, ОLЕ технологиясын пайдаланып басқ а офистік қ осымшаларды шақ ыру, олармен жұ мыс істеу ә рекеттер орындауғ а болады, Delphiдің интеграцияланғ ан ортасы кө п терезелі жү йе болып табылады. Delphi интерфейсі 5 терезеден тұ рады: негізгі терезе (Delphi-Progect1).1Обьект ағ ашын шалу терезесі (Object Tree View).2. Обьект инспекторының (бақ ылаушысының) терезесі (Object Inspector).3 Форма коструктордың терезесі (Form1).4. Код редакторының терезесі (Unit1.pas). 5.Код сілтеушісінің терезесі (Exploring Unit1.pas).Кез келген терезені шығ ару ү шін негізгі менюден view пунктін таң дау керек.

Delphi -де дайындалатын программа жоба деп аталады. Форма программаны дайындау алдында салынатын программаның сұ хбат терезесі. Жоба қ ұ ру ү шін формағ а кампоненттер палитрасынан компонент орнатылады. Компаненттердің тү рлі қ асиеттері болады. Қ асиет(сипатттама, параметр) айнымалардың ерекше тү рі. Олар обьектінің тү рлі мү мкіндіктерін сипаттап, ағ ымдық кү йін анық тайды.Delphi қ осылғ ан кезде форма қ асиеттеріне қ алыпты жағ дайдағ ы алғ ашқ ы мә ндер меншіктеліп қ осылады. Программа қ ұ ру форма немесе компоненттердің кейбір қ асиеттерінің мә ндерін ө згертуден басталады. Ол обьект инспекторы арқ ылы жасалады. Бұ л терезенің 2 астарлы беті бар: propertics(қ асиеттер), events(оқ иғ алар) мыс: name (атауы), captіоn (тақ ырыбы), colоr (тү сі) тсс. Delphi де программалар тү рлі оқ иғ алар арқ ылы басқ арылады. Оқ иғ а программаның жұ мыс істеуі барысында обьект жағ дайының белгілі бір ә рекетке жауап ретінде ө згеруі: мыс,
Onclick -тышқ ан тү ймесін 1 рет басу.
Onclick -тышқ ан тү ймесін 2рет басу.
OnKeypress-пернені.
OnCreate -форманы жабу тсс.

On – префиксі атаудың оқ иғ а екендігін білдіретін белгі. Жоба екі бө лімнен тұ рады: Автоматты тү рде Progect1 атауы бір жобаның файлы (негізгі модуль) типі.dpr жә не Unut1.ras атауы берілген код модулі типі.рas. Модульге оқ иғ аларғ а сә йкес іс – ә рекеттерді орындайтын программа мә тіні (процедуралар) енгізіледі. Программа мә тінін программалық код деп атаймыз. Формадан код терезесіне немесе керісінше ө ту ү шін F12 пернесі қ оданылады. Процедураның жалпы тү рі:

Procedure < атау> (Sender: TObject);
(сипаттау бө лімі)
begin
(программа денесі)
End;

Мұ нд: Sender қ ұ рылысын процедураның қ ай класқ а тиістілігін анық тайтын параметр. Жоба қ ұ рамындағ ы ә рбір форма ү шін автоматты тү рде DFM сипаттау файлы жә не рas модуль файлы жасалады. Форманы сипаттау файлы форманы жә не оның компоненттерінің сипаттаудан тұ рады. Ол файылдың мә тінін кө ру ү шін форманың контекстік менюден View as Text, керісінше ө ту ү шін контекстік менюден View as form.Мысалы, button батырмасынан тұ ратын қ арапайым форманың файлды сипаттау мә тінін қ арастырайық.

Object Form1, Tform1.
Left=192
Top=107
Caption: =’Моя форма’;
….
End;
Object Button1; TButton
Left=88

End;

Басқ ада Visual компоненттері сияқ ты(Visual – кө збен кө ру экрандық) формағ а да қ асиет, ә діс жә не оқ иғ а тә н т.б. Форманың кө руінуін жә не кө рінбеуін басқ ару ү шін тө мендегі ә діс қ олданады:

Show -форманы кө рсетеді, hide – жасырады. Мыс:
Form2.Show;
Form1.Hide

Форманың кө рінуін тө мендегі қ асиеті арқ ылы да басқ аруғ а болады.
Visilble: True & False. Мыс: Form1. Visilble: False;
Форманы жабу ү шін close ә дісін қ олданады. Мыс: Form1.close;
free-форманы жою ә дісі – мыс: Form1.free

Ә р фоманың тақ ырып қ атарының сол жағ ында шарт белгі (пиктограмма немесе иконка) болады. Ол TIcon типті қ атиеті арқ ылы анық талады. Формада стандарт икондарды ө згертуге болады. Ол ү шін Tools (сервис) → Image Editor. Файылдың типі *ico болады. Формағ а шарт белгі жү ктеудің программалық жолы. Form1.Icon.LoadFromfile (‘c: 43071.ico’); Форманың ө лшемін Windows State қ асиеті арқ ылы басқ аруғ а болады. WS Normal, WS Minimized, WS Maximized.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.129 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал