1
4
2
5
3
6
Сурет 1.2 Delphi бағдарламасының құрылымы
1.6 Delphi бағдарламалау тілінің негізгі түсініктері
Кластар – бұл күрделі программаларды жеңілдету және оның сапасын арттыру үшін ойластырылған программистердің ерекше өнер табысы. Кластардың негізінде үш іргелі принцип жатыр, олар инкапсуляция, мұрагерлік және полиморфизм.
Класс – өрістер, әдістер мен қасиеттер деп аталатынүш маңызды ұғымның бірлігін береді. Осы үш маңызды ұғымды бір бүтінге біріктіру инкапсуляция деп аталады. Көпшілік жағдайда, инкапсуляция класты программаның қалған бөліктерінен оқшаулауға мүмкіндік береді, нақты бір есепті шешудің «өзіндік жеткіліктілігін» арттырады. Нәтижесінде класс қандай да бір басқарушылықты арттырады. Мысалы, Tform класы Windows – терезесін құруға қажеттілерден, Tmemo класы – толық басқарылатын мәтіндік редактор жұмысын, Ttimer класы программа жұмысын таймермен қамтамасыз ететін құралдарды қамтиды (немесе инкапсуляциялайды).
Сонымен инкапсуляция дайын программалық жабдықтаумен жұмыс істеуге арналған қуатты құрал болып табылады. Delphi жүйесінің кластар кітапханасы – бұл программа құруға арналған Borland фирмасының программистері құрған кірпіштер жиынтығы екен.
Кез келген класс басқа кластан туындайды. Ол үшін оны хабарлағанда ата- ана кластың аты көрсетіледі:
TchildClass = class (TParentClass)
Туындаған кластан автоматты түрде өзінің ата- анасының өрісі, әдісі және қасиеті шығады және олардың жаңамен толықтырылуы мүмкін. Сөйтіп, мұрагерлік принципі күрделі кластарды кезеңмен құруды және өзінің жеке кластар кітапханасын жасауға мүмкіндік береді.
Object Pascal – дың барлық кластары жалғыз ата – ана ТObject класынан туындаған. Бұл кластың өрісі және қасиеттері жоқ, бірақ өзіне кез – келген объектілердің барлық өмірлік қасиеттерін қамтитын жалпы тағайындалудың әдістерін қамтиды. Программист ТObject класы ата – ана болмаитын класс құра алмайды. Оған төмендегідей бейнелеулер тән:
TaClass = Class (ТObject )
TaClass = Class
Мұрагерлік принципі ТObject класынан оның ұрпақтарына қарай дами отырып, біртіндеп кеңейетін тармақтар кластар құруға әкеледі. әрбір ұрпақ өзінің ата – анасының мүмкіндіктерін толықтырып, оны өзінің ұрпақтарына беріп отырады.
Delphi –дегі кластар тармағы қарайтырайық. TPersistent класы өзінің Тobject ата- анасының мүмкіндіктерін кеңейтеді: ол мәліметтерді файлға сақтап , оны одан қайтадан ала алады, нәтижесінде оның барлық ұрпақтары осы мүмкіндіктерді орындай алады. TComponent класы өз кезегінде, класты құрушының ортасымен әрекеттесіп, оны өзінің ұрпақтарына бере алады.
TControl класы файлдармен және класты құрушының ортасымен жұмыс істеп қоймай, сонамен бірге экранда көрінетін бейнелерді құруға және оның қызметін орындауға қабілетті, ал оның ұрпағы TWinControl Windows терезелерін де құра алады және т.б. «3-сурет».
Сурет 1.3 Delphi –дегі кластар тармағы
Полиморфизм – бұл мағынасы ұқсас мәселелердің әр түрлі тәсілмен шешетін кластар қасиеті. Object Pascal – дың шеңберінде кластардың қасиеті оған кіретін әдістердің жиынтығымен анықталады. Класс ұрпақтарындағы қандай да бір әдістің алгоритмін өзгерте отырып, программист бұл ұрпаққа ата- анасында жоқ ерекше қасиетті бере алады. Әдісті өзгерту үшін оны сол ұрпақта жабу қажет, яғни ұрпақта бір атаулы әдісті хабарлап, оған қажетті әрекетті жүзеге асыру қажет. Нәтижесінде объект – ата – ана мен объект – ұрпақта әр түрлі алгоритмдік негізі бар, объектілерге әр түрлі қасиет беретін екі бір атаулы әдіс жұмыс істейтін болады.
Object Pascal тілінде полиморфизм тек жоғарыда сипатталған мұрагерлік механизмі мен ата-ананың әдісін жабумен шектелмейді, сондай-ақ оларды виртуалдандыруда жүзеге асады.
Кластың құрушылары
Өріс деп кластағы инкапсуляцияланған мәліметтерді айтады. Өріс кез келген типті болуы мүмкін, оның ішінде класта болуы мүмкін;
Мысалы:
Type
TMyClass=class
AIntField:Integer;
AstrField:String;
AObjectField:TObject;
……………………….
End;
Әрбір объект өрістер жиынтығын алады, бірақ осы кластың барлық объектілері үшін жалпы қасиеттер мен әдістер жиынтығы бар. Инкапсуляцияның іргелі принципі өріске кластың әдістері мен қасиеттерінің көмегі арқылы қатынас жасау керектігін талап етеді. Бірақ Object Pascal тілінде өріске тікелей шығуға рұқсат етіледі.
Type
TMyClass=class
FIntField:Integer;
FstrField:String;
………………….
End;
Var aObject:TMyClass;
Begin
………………..
AObject.FintField:=0;
AObject.FStrtField:=’символдар жолы’;
……………………….
End;
Класс – ұрпақ өзінің барлық аталарынан барлық өрістерді ала алады және оны өзінікімен толықтырады, бірақ алдын-ала анықтай алмайды. Сөйтіп, тармақ иерархиясында класс қаншалықты төмен орналасса, соншалықты оның объектілерінен мәліметтер ала алады.
Класта инкапсуляцияланған процедуралар мен функциялар әдістер деп аталады. Олар әдеттегі қосалқы программалар тәрізді хабарланады:
Type TMyClass=class
Function MyFunc(aPar:Integer):integer;
Procedure MyProc;
End;
Кластың әдістеріне кіру оның өрістеріне кіргендей құрама атаулардың көмегімен жүзеге асырылады.
Var
AObject:TmyClass;
Begin
……………………
AObject:MyProg;
…………………..
End;
Жоғарыда айтылғандай кластың әдістері ұрпақтарында жабылып тұруы мүмкін. Мысалы,
Type
TparentClass=Class
Procedure DOWork;
End;
TChildClass=Class (TParent Class);
Procedure DOWork;
End;
Екі класстың ұрпақтары да DOWork процедурасының атауы бойынша ұқсас әрекеттерді орындауы мүмкін. Бірақ, бұл жалпы жағдайда әртүрлі орындалады. Мұндағы әдістерді ауыстыру статикалық деп аталады, яғни копмильятормен программаны жүргізу кезеңінде әдістерді динамикалық ауыстыру жиі пайдаланылады. Мұны жүзеге асыру үшін аталық класта орналасқан әдіс динамикалық немесе виртуалды түрде хабарлануы тиіс. Осындай хабарлауды кездестіргеннен кейін компилятор екі кесте құрады. DMT (Dynamic Method Table) және VMT (Virtual Method Table) оларды сәйкес динамикалық немесе виртуалды әдістердің кіру нүктесіндегі адреске орналастырады. Әрбір ауыстырылатын әдіске оралған компилятор сәйкес кестелердің бірінен қосалқы программаға кіру нүктесінің адресін шығаруға мүмкіндік беретін кодты кояды.
Класс ұрпағында әдісті алмастыру override (жабу) директивасымен хабарланады. Осы нұсқауды алғаннан кейін, компилятор программаны жүргізу кезеңінде ата – аналық кестесіне класс – ұрпақ әдісінің кіру нүктесін орналастырады, ал аталыққа жаңа әдістің көмегімен қажетті әрекетті орындауға мүмкіндік береді.
Динамикалық және виртуалдық әдістердің арасындағы айырмашылығы – динамикалық әдістер кестесінде осы класта тек dynamic ретінде хабарланған әдістер адрестері болады, ал виртуалдың кестесінде сол кластың виртуалдың әдістерімен қатар, оның барлық аталықтарының да адрестері сақталады. Көлемі айтарлықтай VMTкестесі жылдам іздеуді жүзеге асырады, сондай-ақ, динамикалық әдіске оралғанда программа алдымен DMT объектінің кестесін қарап шығады, одан кейін аталық класын қажетті кіру нүктесі табылғанша іздейді.
Динамикалық жабылатын әдістер ешнәрсе орындамауы мүмкін. Мұндағы әдістер абстрактылы әдістер деп аталады, олар ұрпақтарында жабылуға міндетті. Программист adatract директивасымен хабарлау арқылы абстрак әдісті шақыруға тосқауыл қоя алады. Мысалы:
Type
TvisualObject=class (TWinControl)
…
Procedure DRAW (IsSHOW:Boolean);
Virtual; abstract; end;
TvisualChildObject=class(TWinControl)
…
Procedure DRAW (IsSHOW:Boolean):override;
End;
Var
aVisualObject:TvisualObject;
aVisualChild: TvisualChildObject;
begin
…
aVisualObject. SHOW; {қате / Абстракт әдіс шақырылды}
aVisualObject. SHAW {Шақыру дұрыс. TvisualChildObject класындағы DRAW әдісі жабылған}
… End;
Жабылмаған абстракт әдісті шақыру орындалу барысында қате болып есептеледі. Сауатты құрылған программада абстракт әдіс шақырылмайды. Кез келген класстың құрамына екі арнайы әдіс кіреді: конструктор және деструктор. Tobject класында бұл әдістер Create және Destroy деп аталады. Конструктор динамикалық жадыда объектілерді үлестіреді және жадының осы адресіне SELF айнымалысын орналастырады, ал автоматты түрде класта хабарланады. Конструктор және деструктор процедура болып табылады, бірақ Constructor және destructor қызметші сөздерінің көмегімен хабарланады:
Type
TMyClass=class
InField:Integer;
Constructor Create (Value:integer);
Destructor Destroy;
End;
Көптеген конструкторлар объектінің дұрыс жұмыс істеуіне қажетті қандай да бір әрекетті орындайды. Сондықтан класс ұрпақ конструкторында алдымен өзініңаталық конструкторын шақыру қажет, одан кейін қосымша әрекеттер жүзеге асырылады. Аталық кластағы кез келген әдісті шақыру Inherited (мұрагер) қызметші сөзінің көмегімен жүзеге асырылады:
Constructor TMyClass.Create (Value:Integer);
Begin
Inherited Create; //Мұрагер конструкторды шақыру
Inherited:= Value //Қосымша әрекетті орындау
End;
Кейбір әдістер объектіні құрмай және инициализация жасамай-ақ шақырылу мүмкін. Мұндағый әдістер кластың әдістері деп аталады, олар class қызметші сөзінің көмегімен шақырылады.
Type
TMyClass=class (TObject)
Class Function GetClassName:String;
End;
Var
S:string;
Begin
S:=TMyClass.GetClassName;
…
End;
Кластың әдістері өрістерін шақыра алмайды, жалпы жағдайда объект құрмай-ақ шақырылады. Әдетте класс туралы қызметші ақпаратпен шектеледі: класс аты, аталық класс аты, әдістәң адресі және т.б.
Қасиеттер-бұл өріске кіру мүмкіндігін реттейтін кластардың арнайы механизмі. Қасиеттер property, read және write қызметші сөздерінің көмегімен хабарланады (read және write сөздері тек қасиетті хабарлау контексінде пайдаланатын қызметші сөздер). Әдетте қасиет қандай да бір өріспен байланысты болады және осы өріске жазуда немесе одан оқуда пайдаланатын кластың әдістерін көрсетеді.
Мысалы:
Type
TaClass=Class
IntField: integer;
Function.GetField:integer;
Procedure SetField (Value: integer);
Property IntegerValue:integer read
GetField write SetField;
End;
Программа контексінде қасиет өзін әдеттегі өріс ретінде көрсетеді. Сондай-ақ, төмендегідей операторларды жазуға болады:
Var
aClass:TaClass;
Value: integer;
Begin
aClass:=TaClass.Creat {Өрісті немесе қасиетті шақырар
алдындағы конструктордың міндетті шақырылуы}
aClass.InterValue:=0;
…
Value:=aClass.InterValue;
…
aClass.Destroy; //керек емес объектіні өшіру
end;
Мұнымен бірге, төмендегідей меншіктеу операторының жазылуы мүмкін:
aClass.IntField:=NewValue;
Бұл оператормен төмендегі оператордың арасындағы айырмашылық – қасиеті шақырғанда SetField әдісі автоматты түрде қосылады және арнайы әрекеттер орындалады.
Оқу программасында келтірілген
LbOUTPUT.CAPTION:=”жол” операторын еске түсірейік.
Label компоненттің Caption қасиеті SetText әдісін шақырады, ол ішкі айнымалыдағы символдар жолын сақтап қана қоймай, жаңа мәтінді де еске сақтайды.
Егер қасиетті арнайы оқу немесе жазу үшін қажеттілік болмаса сәйкес әдістің атауының орнына өріс атауын көрсетуге болады:
Type
TaClass=Class;
IntField:integer;
Procedure SetField(Value:integer);
Property IntegerValue: Integer read IntField write SetField;
End;
Егер қасиет тек оқу немесе жазу үшін ғана қажет болса, онда оған сәйкес бөлігін жазбауға болады. Қасиет өріспен байланыспауы да мүмкін.
Шынында, ол қасиеттің өзінің типіндей мәліметтерден қандайда бір әрекетті жүзеге асыратын бір немесе екі әдісті сипаттайды.
Жобаның құрылымы. Жоба файлы Object Pascal тілінде жазылған, компилятормен өңдеуге арналған программа болып табылады. Бұл программа Delphi – де автоматты түрде құрылады, бірнеше жолдардан тұрады. Оны көру үшін Delphi – ді шақырып, бас менюден Project/View Source опциясын таңдаңыз. Delphi Project1 мәтінінен тұратын код терезесін шығарады:
Program Project1;
Uses
Forms,
Unit1 in ‘Unit1.pas’ {fmExample};
{SR*. RES}
Begin
Application. Unitialize;
Application. Greate Form (TfmExample, fmExample );
Application. Run;
End.
Код терезесінде қарайтылған шрифтпен қызметші сөздер жазылған, ал курсивпен фигуралық жақша ({}) ішіне түсіндірме жазылған. Программа мәтіні Program сөзінен басталып, End сөзімен аяқталып тұр. End сөзінен кейінгі нүктеден соң жазылған жазуды программалық бірліктің терминаторы деп атайды. Егер программа мәтінінде осындай терминетор кездесетін болса, компилятор программаны жолдауды тоқтатып, мәтіннің қалған бөлігін ескермейді (жойы жібереді).
Object Pascal тілінде қызметші сөздер маңызды роль атқарады. Әрбір қызметші сөз компиляторға шартты нұсқау береді, тек ағылшын тілінде жазылады.
Ал түсіндірменің компилятор үшін ешқандай мәні жоқ, түсіндірме кездессе, компилятор оны қалдырып кетеді. Программадағы түсіндірме программист үшін аса маңызды, ол программаны түсінуді жеңілдетеді. Object Pascal тілінде фигуралық жақшаға ({}) алынған кез келегн символдар тізбегі түсіндірме болып есептеледі.
Жоғарыдағы келтірілген мәтінде екі түсіндірме бар, бірақ {SR*. RES} жолы шын мәнінде түсіндірме емес. Бұл арнайы түрде жазылған фрагменті – компилятор директивасы деп аталады. Директивалар S символынан басталады. Түсіндірме үшін сондай – ақ, (*,*) және // белгілері де пайдаланылады. (*.*) – фигуралық жақша тәрізді, ал // символдары компиляторға түсіндірменің ағымдағы жолдың соңына дейін жазылатынын ескертеді.
Program сөзінен кейінгі жазылған атау мен соңынан қойылған «;» программа тақырыбын құрайды. Тақырыптан кейін бейнелеу бөлімі жазылады, Мұндағы программист программада пайдаланылатын идентификаторларды сипаттайды. Идентификаторлар типер, айнымалылар, процедуралар, функциялар тәрізді программа элементтерін белгілейді. Uses қызметші сөзінен кейін басталатын сөйлемнің көмегімен программист программаның ажырамайтын құрамдас бөлігі ретінде қарастырылатын, басқа файлдарда орналасатын программа фрагменті (модульдер) туралы компиляторға хабарлайды.
Программадағы:
Uses
Forms,
Unit1 in ‘Unit1.pas’ {fmExample};
Жолдар программада файл жобамен қатар, Forms және Unit1 модульдері пайдаланатындығын көрсетеді. Forms модулі Delphi – де стандартты модуль, ал Unit1 - әлі белгісіз, жаңа модуль, Delphi Мұндағый жағдайда модульдің мәтіні бар файлдың атын да көрсетеді (in ‘Unit1.pas’) және файл модуліне байланысты форманың сипаттамасы {fmExample} – де.
Программа денесі Begin сөзінен басталып, End. Терминеторымен шектеледі. Программа денесі Object Pascal – дың біренеше операторларынан тұрады. Әрбір операторда қандай да бір әрекет жүзеге асырылады – айнымалы мәнін өзгерту, есептеу нәтижесін талдау, қосалқы программаға оралу және т.б. Біздің мысалда программа денесінде үш орындалатын оператор бар:
Application. Unitialize;
Application. Greate Form (TfmExample, fmExample );
Application. Run
Бұлардың әрқайсысы Application объектілер әдісінің біріне оралады. Объект дегеніміз – өңдеуге арналған мәліметтер мен қосалқы программаны қамтитын, арнайы дайындалған программа фрагменті. Мәліметтер деп объектінің өрістерін, ал қосалқы программа деп оның әдістерін айтамыз. Объект тұтасымен алғанда, қандай да бір нақты есепті шығаруға арналған, программада бөлінбейтін бүтін ретінде қарастырылады. Объект қазіргі программалау тілдерінде маңызды роль атқарады. Объектінің басты екі қасиеті бар: оның функционалдығы мен бөлінбейтіндігі.
Delphi – ді құрушылар жүздеген объектіні қарастырған, ол көп қабатты программалар үйін тұрғызатын кірпіштер тәрізді. Программаны құрудың Мұндағый принципі объектілі бағдарланған программалау деп аталады.
Application объектісінде Windows программаны толығымен басқаруға қажетті мілңметтер мен қосалқы программалар жинақталған. Delphi автоматты түрде әрбір жаңа проект үшін Application объект программасын құрады.
Application. Initialize жолы Application объектісінің Initialize әдісіне оралатынын көрсетеді. Осы жолды оқығаннан кейін компилятор қандай да бір программа фрагментін орындауды талап ететін кодты құрады. Осы фрагментті орындағаннан кейін (яғни программистердің тілімен айтқанда, қосалқы программадан шыққаннан кейін) процессор басқарудыпрограмманың келесі жолына береді, ол Сreate Form әдісі арқылы шақрылады.
Application объектісінің Сreate Form әдісі экранда бас форма терезесін құрып көрсетеді, ал Run – Windows – ден түскен пайдаланушының әрекеті жөніндегі хабарларды үздіксіз алып, оны өңдеуді жүзеге асырады. Пайдаланушы Close батырмасын тышқанмен белгілегенде Windows программаға программа жұмысын тоқтатып, оған бөлінген жүйелік ресурстарды босату жөнінде арнайы хабарлама береді.
Сонымен қорыта келгенде, файл жобаны толығымен Delphi өзіқұрады. Осы себепті файл – жобаның затының алатын орны ерекше, ол әдетте, код терезесінде көрінбейді. Күрделі жобаларды құрғанда бұл файлды оған кіретін басқа формалардың қызметін түсіндіру үшін, сондай – ақ, программа жұмысын бастар алдындағы кейбір арнайы әрекеттерді орындау үшін пайдалануға болады
Delphi ортасының меню жолы
Менюдің “Файл” (File) пункті командаларын қарастырайық. Бұл пунктте «Құру»(Создать), «Ашу»(Открыть), «Жобаны ашу»(Открыть проекта), «Таңдау»(Выбрать), «Сақтау»(Сохранить) және т.б. командалар қарастырылған. Толығырақ сипаттама алу үшін «Кесте 1» -де берілген.
Кесте 1 Менюдің “Файл” (File) пункті командалары
Меню командалары
|
Сипаттамасы
|
Создать (New)
|
Құралатын объекттің типін (қосымша, форма, модуль) таңдауға арналған ішкі меню
|
Открыть… (Open)
|
Құрылған проект, форма, модуль, редактордағы тексттік файлды жүктеу үшін ашуға арналған диалогты терезені бейнелейді. Егер модуль форманы сипаттаса, онда бұл форма экранда пайда болады
|
Открыть проект… (Open Project)
|
Құрылған проекттi жүктеу үшiн диалогты терезенi көрсетедi (.bpr или .bpk)
|
Кесте 1 жалғасы
|
Выбрать (Reopen)
|
Соңғы жабылған проекттер мен модульдердiң тiзiмiнен тұратын iшкi менюдi көрсетедi
|
Сохранить (Save)
|
Редактрленген файлды оның ағымды атымен сақтайды
|
Сохранить как… (Save As)
|
Проект файлындағы өзгертулердi енгiзiп ағымды файлды жаңа атпен сақтайды
|
Сохранить проект как… (Save Project As)
|
Ағымды проекттi жаңа атпен сақтайды
|
Сохранить все (Save All)
|
Барлық ашылған файл, проект пен модульдердi сақтау
|
Закрыть
(Close)
|
Ағымды проекттi және онымен байланысты модульдер мен формаларды жабады
|
Закрыть все (Close All)
|
Барлық ашылған файлдарды жабады
|
Использовать модуль (Use Unit)
|
Таңдалған модульдi белсендi модульдiң сипаттамасына қосады
|
Печать (Print)
|
Белсендi файлды баспаға бередi
|
Выход (Exit)
|
Проекттi жабады және ортадан шығады
|
Менюдiң басқа пунктерiн қарастырайық. “Правка” (Edit) пунктi “Отменить” (Undo) және “Вернуть” (Redo) командаларынан тұрады, олар редактормен жұмыс iстеу кезiнде жасалған қате әрекеттердiң салдарын жоюға өте пайдалы. Мысалы, егер қажет текст фрагментi кездейсоқ өшiрiлген жағдайда.
“Отменить” (Undo) командасын орнату үшiн редактор менюiндегi Сервис | Опции редактора (Options | Environment) пунктiн қалай қолдануға болатындығын түсiндiредi. “Отменить” (Undo) командасының мүмкiн санын шектеуге болады. “Вырезать”(Cut), “Копировать”(Copy), “Вставить” (Paste) және “Удалить”(Delete) командаларының қызметi Windows-тың басқа қосымшаларындағы осы командалардың қызметiмен бiрдей, бiрақ Delphi-де оларды тек текстке емес, визуалды компоненттерге де пайдалануға болады.
“Сделать верхним” (Bring To Front), “Сделать нижним” (Send To Back), “Выровнять” (Align) және “Размер” (Size) командалары 1 сабақта талқыланған. Қалған 4 пункт формаладың сыртқы түрiн жылдам “безендiруге” көмектеседi.
“Поиск” менюiнде программаны орындау кезiнде қатенi табуға көмектесетiн “Find Error” (қатенi iздеу) командасы бар. Қате туралы хабарда оның адресi (орны) көрсетiлген жағдайда Сiз менюдiң Search | Find Error пунктiн таңдап, сол адрестi енгiзуіңізге болады. Егер мүмкiндiк болса, Delphi ортасы программада қате жiберiлген орынға сiздi апарады.
Менюдiң “Вид” (View) пунктi командаларын қарастырып, сипаттама берейік «Кесте 2».
Кесте 2 Менюдiң “Вид” (View) пуктiнiң құрамы
Меню командалары
|
Сипаттамасы
|
Менеджер Проектов (Project Manager)
|
Проектiлердiң менеджерiн көрсету
|
Инспектор объектов (Object Inspector)
|
Объектiлер инспекторын көрсету. Онда өзгертуге болатын белсендi компоненттердiң қасиеттерiн бейнелейдi
|
Дерево объектов (Object TreeView)
|
Сiздiң формаңызға, модульге және т.б. орналастырған визуалды не визуалды емес компоненттердiң сатылы ағаш тәрiздес тiзiмiн көрсету
|
Список дел
(To do List)
|
Жасалған iс-әрекеттер тiзiмi
|
Панель выравнивания (Alignment Palette)
|
Формадағы объектiлердi әртүрлi параметрлер бойынша түзету
|
Обозреватель (Browser)
|
Программадағы объектiлер сатысын, бастапқы текстегi идентификаторды iздеу және т.б. көру құралдарын шақыру
|
Обзор кода
(Code Explorer)
|
Сiздiң модулiңiзде сипатталған барлық типтердi, қасиеттердi, әдiстердi, глобалды айнымалыларды көрсететiн ағаш тәрiздес диаграмманы ұсынады
|
Список компонентов (Component List)
|
Компоненттер палитрасының альтернативасы. Тышқан болмаған жағдайда компоненттер аты бойынша iздеуде пайдаланады
|
Список окон
(Window List)
|
Delphi ортасында ашылған терезелер тiзiмi
|
Форма/Модуль
(Toggle Form/Unit)
|
Формадан оған сәйкес модульге өту, тiзiмнен модульдi немесе форманы таңдау
|
Список модулей (Units)
|
Проектiдегi модульдер тiзiмi
|
Список форм (Forms)
|
Проектiдегi формалар тiзiмi
|
Менюдiң “Project” (Проект) пунктiнде проектiні компиляциялауға (compile) немесе құруға (build) болады. Егер Compile немесе Run таңдаса, онда Delphi соңғы компиляциядан кейiн тек өзгертiлген модульге ғана қайта компиляция жасайды. Бiр жағынан Build all бастапқы текстке қол жету мүмкiндiгi бар модульдердiң барлығын қайта компиляциялайды. «Проверить» синтаксис (Syntax Check) командасы DCU файлын жаңартпай, тек программа кодының дұрыстығын тексередi.
Ең төмендегi Информация (Information) пунктi программа туралы мына ақпаратты бередi: берiлгендер, ағын және код сегменттерiнiң өлшемi, локальды динамикалық жадының өлшемi және компиляцияланған жолдардың саны.
“Выполнить” (Run) пунктiн программаны компиляциялауға және жүктеуге және де командалық жолдың параметрлерiн программаға беру үшiн қолданады.
Delphi ортасының компоненттер тақтасы
Компоненттер тақтасы - Delphi ортасының ең басты байлығы болып табылады. Ол негізгі терезенің сол жақ бөлігінде орналасқан және онда қажетті компонентті жылдам іздеуді қамтамасыз етеді. Олардың ашылатын беттері бар. Компонент деп белгілі бір қасиеті бар программист формалар терезесіне орналастыра алатын қандай да бір басқару элементін түсінеміз. Компоненттердің көмегімен программаның сүлбесі (каркасы) жасалады. Жалпы жағдайда экранда көрінетін терезелер, батырмалар, таңдаулар тізімі және т.б. арқылы орындалады.
Батырмалар панелі тәрізді компоненттер палитрасы түзетіледі. Ол үшін арнайы редактор пайдаланылады, редактор терезесі компоненттер палитрасындағы кез келген пиктограммаға курсорды келтіріп, тышқанның оң жақ батырмасын басқанда және «Properties» опциясын таңдағанда пайда болады. Компоненттер тақтасы қосымшаға қатысатын компоненттерді таңдау мүмкіндіктерін береді. Компоненттер - бұл Delphi – қосымшаны жинауға қажетті «құрылыс блоктары». Компоненттер пиктограмма түрінде тақтада орналасқан. Delphi-ді іске қосқанда «Standart» беті белсенді болып тұрады. Беттердің орналасу тәртібін өзгерту, атын өзгерту, жою, пиктограмма қосу немесе кейбір пиктораммаларды басқа бетке жылжыту үшін Palette Properties диалогтік терезесі қолданылады. Осы диалогтік терезені ашу үшін Component/Configure Palette командасын немесе компоненттер палитрасының кез-келген жерінде тышқанның оң жағындағы контекстік менюдің Properties(қасиет) командасы арқылы жүзеге асады.. Component palette-(компоненттер палитрасы)-бұл Delphi-де көп қолданылатын құралдардың бірі. Ол көптеген сандар бетінен тұрады және олар компоненттер үлесінде болады «Сурет 1.3». Жұмыс барысында пайдаланушы жаңа беттерді құруға және барын кетіруге, кез-келген беттердегіні кетіруге, қосуға және олардың тәртіптерін өзгерте алады.
Сурет 1.3 Компоненттер палитрасы
Standard – Delphi-гі басқарудың стандарттық компоненттері, олар алдыңғы Массивтықтық мүмкіндіктерін кеңейтеді;
Additional – Delphi-гі басқарудың қосымша компоненттері, олар алдыңғы жзиынтық мүмкіндіктерін кеңейтеді;
Win32 – өзінде windows-тың (9x/NT) 32 дәрежелі Массивтығы бар компоненті ;
System – Delphi-дің спецификалық жүйелі көрнекі емес компоненті ;
Data Access – мәліметтер қорына шығу үшін;
Data Controls – мәліметтер қорындағы ақпараттарды көрсету үшін компоненттер;
ADO – ActiveX Data Objects (ADO) қолдану арқылы мәліметтер қорына қосылуға мүмкіндігі бар компоненттер;
InterBase –Borland Database Engine (BDE) немесе ActiveX Date Objects (ADO) қолданбаусыз, InterBase мәліметтер қорына қосыла алатын компоненттер ;
MIDAS – мәліметтер қорының көп буынды технологиялары үшін компоненттер;
InternetExpress –Web Server application (Internet–тіркемелер), жұмыс істей алатын тіркемелерді және де multi–tiered database (көп буынды тіркемелер) жұмыс істейтін тіркемені құра алатын компоненттер;
Internet – Internet-пен жұмыс істей алатын компоненттер;
FastNet components – оның көмегімен тіркемелер әртүрлі Internet – протоколдары қолдана алатын компоненттер;
Decision Cube –мәліметтер қорындағы көп өлшемді ақтараттар анализі компоненті (тек Delphi Client/Server);
QReport – жазбаша есептерді көрнекі жобалау компоненті;
Dialogs – өзіне Windows-тың стандарттық диалогтық терезелерін кіргізетін компоненттер;
Win 3.1 - Windows 3.1 басқару компоненттері (тіркемелердің кері сиымдылығы үшін);
Samples – құжаттамаларда үлгі ретінде қолданылатын компоненттер ( олардың мәндері /DELPHI/SOURCE/SAMPLES/ папкасында орналасқан);
ActiveX –басқа да фирмалармен дайындалған ActiveX, компоненттері;
Servers page components – танымал COM- серверлер үшін VCL «белгісін» көрсететін компоненттер.
Компоненттер палитрасы Delphi құралдар панелінде көрінуі де мүмкін
немесе көрінбеуі мүмкін. Осы опцияны басқару View => Component Palette мәзірі бөлімінің көмегімен жүзеге асырылады.
Терезенің негізгі өрісінен сіз терезенің сол жағынан объектілер инспекторын (Object Inspector) көре аласыз, оның көмегімен сіз компоненттерге қасиет бере аласыз және жағдайларды жөндейді. Бұл бетті 2 бағаннан тұрады: сол бағанда қасиеттер аты бар, ал оң жағында қасиеттердің нақты мәні бар.
Пиктограммалық батырмалар арқылы негізгі меню жүйесінің маңызды операцияларына (мүмкіндіктеріне) тез арада жеткізуге болады.
Атқаратын жұмыстарына байланысты пиктограммалық батырмалар 6 топқа бөлінген, әр топ жеке тақташада орналасады және олардың атқаратын жұмысы төменде келтірілген.
Standard парағы
- Объектілер репозитариясын ашу (File/new)
- бұрыннан құрылған файлды ашу (File / open file)
-файлды дискіде сақтау (File / Save as….) (Ctrl+S)
- дискіге жазып барлық файлдарды сақтау (File / Save all)
- бұрыннан құрылған программаның жобасын ашу (File / open)
(Ctrl+F11)
- жобаға жаңа файлды қосу (Project / Add to Рroject) (Shift+F11)
- жобадағы файлды жою (Project / Remove from Project)
View қарап шығу тобы
- екпінді жобаның құрамындағы модульдер тізімінен қажетті
модульді таңдау (View / Units) (Shift+F12)
-екпінді жобаның құрамындағы формалардың тізімінен керекті форманы таңдау (View / Form) (Ctrl+F12)
-форманың терезесінен программа кодының терезесіне және одан
кері өту (View / Toggle Form Unit) (F12)
-жаңа форманы құру (View / New Form)
Debug (түзету ) тобы
- программаны компиляциялау және орындау
- түзету енгізіп жатқан программаның жұмысын уақытша тоқтату
(Run / Program Pause)
-қадамдық тексеру ішкі пограмманың жұмысын бақылау тәртібінде
орындайды.
Custome (баптау) тобы
-Delphi ортасының құрамындағы анықтама жүйесін іске қосу.
(Help / Cоntents)
- Delphi ортасының екпінді күйін сақтау.
Компоненттер жинағы – Delphi-дің негізгі ерекшелігі. Ол негізгі терезенің оң жағында орналасып, қажетті компонентті тез табуға арналған белгішелерден тұрады.
Компонент деп – белгілі бір қасиеттері бар және форма терезесінде кез-келген объектіні орналастыру мүмкіндігін туғызатын функционалды элементті атайды. Delphi ортасының компоненттері 19 топқа бөлінген, ол топтарды парақтар деп атайды. Компоненттер көмегімен программаның негізі – қаңқасы құрылады (терезелер, батырмалар, таңдау тізімдері және т.с.с.)
Батырмалар тақташасы сияқты компоненттер палитрасын икемдеуге болады. Ол үшін компоненттер палитрасына кіретін кез-келген пиктограммада тышқан тетігінің оң батырмасын таңдау арқылы арнайы редакторды іске қосу қажет.
Ашылған менюдегі Рroperties (қасиеттер) пунктін таңдағанда оның терезесі шығады.
Delphi ортасының компоненттері бағдарлама орындалғандағы көріністің пішімін анықтайтын бөлек элементтері ретінде қолданылады. Сонымен қатар, Delphi ортасының көрініспен жұмыс атқармайтын, яғни визуалды емес көптеген маңызды компоненттері бар. Дәлірек айтсақ, компонент алдын-ала даярланған бағдарламаның үзіндісі, оны қажет болғанда құрылып жатқан бағдарламаға ендіруге болады деп түсіну керек.
Delphi ортасының құрамына бірнеше компоненттер кіреді. Солардың кейбір маңыздыларын қарастырайық. Standard парағы.
Сурет 1.4 Standard парағы
Standard парағының құрамына келесі компоненттер кіреді. Төмендегі «Кесте 3» - де командалар мен олардың функцияларына сипаттама бберілген.
Кесте 3 Standard парағы компоненттері
Белгісі
|
Аты
|
Атқаратын жұмысы
|
|
Frame
|
Жиектері бар форма тәрізді аумақ, басқа компоненттерді контейнері ретінде қолданылады
|
|
Main Menu
|
Бағдарламаның негізгі меню жүйесі. Компонент арқылы күрделі меню құрып, жұмыс атқаруға болады.
|
|
Popup Menu
|
Көмекші немесе локалды меню. Әдетте бұл меню тышқанның оң батырмасын басқанда пайда болады.
|
|
Label
|
Белгі. Компонентке шағын жазу орналастыру мақсатында қолданылады.
|
|
Edit
|
Енгізу қатары. Бір мәтіндік жолды енгізу, көрсету және түзету амалдарын орындауға қолданылады.
|
|
Memo
|
Көпжолдық мәтін редакторы. Енгізу және шығару амалдарын орындауға қолданылады.
|
|
Button
|
Нұсқаулық батырма. OnClick оқиғасын өңдеуші үзінді кейбір нұсқауларды орындайды.
|
Кесте 3 жалғасы
|
|
Check Box
|
Тәуелсіз ауыстырғыш. Бағдарламаны орындалу барысында тышқанды басқанда енгізілетін ауыстырғыштың Checked мәні өзгертіледі.
|
|
Radio Button
|
Тәуелді ауыстырғыш. Әдетте ол осындай тағы да бір компонентпен бір топқа біріктіріледі. Тышқанмен сырт еткізгенде алдыңғы таңдалған компоненттің босатылуына себеп болады.
|
|
List Box
|
Таңдау тізімі. Опциялар варианттарының тізімін ұсынады және таңдалған бір опцияны бақылауға мүкіндік туғызады.
|
|
Combo Box
|
Қиыстырылған таңдау тізімі. Таңдау тізімінен және мәтін редакторынан тұрады.
|
|
ScrollBar
|
Басқару белдеулері. Windows терезелері сияқты тік және көлденең белдеулерін ұсынады.
|
|
GroupBox
|
Элементтер тобы. Бір мағыналық компоненттерді біріктіру.
|
|
RadioGroup
|
Тәуелді ауыстырғыштар тобы. Бір-бірімен байланысқан бірнеше ауыстырғыштармен жұмыс атқаруға мүмкіндік туғызады.
|
|
Panel
|
Тақташа. Бірнеше компоненттерді біріктіру үшін қолданылады. Ішкі және сыртқы жиектері бар, жаншылған және дөңесті эффектілерін көрсетуге болады.
|
|
ActionList
|
Әрекеттер тізімі. Пайдаланушының бір тектес элементтер тобындағы басқару элементін таңдау әрекетіне, бағдарламаны сезіндіру амалдарын орындатуға арналған.
|
Additional парағының құрамына сұхбаттасу терезелерін орналастыру үшін қолданылатын келесі компоненттер кіреді.
Сурет 1.5 Additional парағы
Төменде Additional парағы компоненттері мен олардың функциялары келітірген «Кесте 4».
Кесте 4 Additional парағы компоненттері
Белгі
|
Аты
|
Атқаратын жұмысы
|
|
BitBtn
|
Бетінде суреті және жазуы бар нұсқаулық батырма
|
|
SpeedButton
|
Пиктограммалық батырма. Әдетте негізгі менюдің опцияларына қол жеткізу үшін қолданылады.
|
|
MaskEdit
|
Арнайы мәтіндік редактор. Енгізілетін мәтінді сүзу үшін қолданылады.
|
|
StringGrid
|
Жолдар кестесі. Осы компонент мәтіндік мәліметті кесте түрінде көрсетуге мүмкіндік туғызады.
|
|
DrawGrid
|
Кез келген түрдегі мәліметтерден тұратын кесте (тіпті сурет те болуы мүмкін)
|
|
Image
|
Сурет. Осы компоненттің көмегімен суреттерді, пиктограммалар мен метофайлдарды шығаруға болады.
|
|
Shape
|
Фигура. Осы компоненттің көмегімен әр түрлі фигураларды (төртбұрыш, эллипс, шеңбер т.с.с.) формаға оналастыруға болады.
|
|
Bevel
|
Жиектеу. Терезенің бір аумағын үш өлшемді жиекпен немесе белдеулермен жиектеу.
|
Кесте 4 жалғасы
|
|
ScrollBox
|
Қарап шығу белдеулермен қамтылған тақташа. Егер тақташадағы орналастырылған компоненттер ашылған терезеде толығымен көрсетілмесе, онда белдеулер автоматты түрде орнатылады.
|
|
CheckListBox
|
Ұсынылған тізімнен бірнеше опцияларды таңдауға мүмкіндік береді (әр опция CheckBox ауыстырғышымен қамтылған )
|
|
Srlitter
|
Шек. Бұл компонент формадағы екі көрінетін компоненттер аралығында орналасады және бағдарламаның орындалу барысында компоненттердің арасындағы шегін жылжытуға мүмкіндік туғызады.
|
|
StaticText
|
Статистикалық мәтін, Label – ден айырмашылығы - өзіндік Windows терезесімен қамтылған. Сондықтан бұл терезедегі мәтінді жиектеуге болады.
|
|
ControlBar
|
Басқару белдеулері. Drag$Dock технологиясындағы компоненттерді «айлақтату» жабдығы – контейнері.
|
|
Application Events
|
Егер бұл компонент формаға орналастырылса, онда Windows-тің бағдарламаға арналған хабарлары сол терезеге шығарылады.
|
|
Chart
|
Диаграмма. Берілгендердің графикалық көрінісін шығаратын арнайы тақташаларды құруды жеңілдетеді.
|
Dialogs парағы. Dialogs парағында Windows ортасының стандартты сұхбаттасу элементтерін ұйымдастыру үшін қолданылатын компоненттері орналасқан «Сурет 1.6». Осы парақтың объектілері орындалғанда көрінбейді және сұхбаттасу жұмыстары бағдарламалы орындалады.
Сурет 1.6 Dialogs парағы
Мысалы, if Open Dialog1.Execute then Image1.Picture.LoadFromFile (OpenDialog1. FileName);
Windows–тің сұхбаттасу терезелерінің Dialogs парғында пайда болуларының реті: Open Dialog – сұхбаттасуды таңдау; SaveDialog – файлдарды сақтау; FontDialog – қаріпін орнату; ColorDialog – түсті таңдау; PrintDialog – баспаға шығару; PrinterSetupDialog – принтерді орнату; FinDialog – жолды іздеу; ReplaceDialog – іздеу және алмастыру.
System парағы. Бұл парақты компоненттері DDE, OLE таймер және т.с.с. жүйелі сервистік элементтеріне қол жеткізуге мүмкіндік туғызады «Сурет 1.7».
Сурет 1.7 System парағы
System парағы компоненттері төмендегі компоненттер тұрады. Бұл командалар функциясын төмендегі «Кесте 5» көруге болады.
Кесте 5 System парағы компоненттері
Белгі
|
Аты
|
Атқаратын жұмысы
|
|
Timer
|
Таймер, OnTimer оқиғасы Interval (аралығы) қасиетінде анықталған уақыт аралығы бойынша шақырылады. Уақыт аралығы 1...65535 мс.
|
|
PaintBox
|
Сурет салуға арналған аумақ. Тышқанмен байланысты оқиғаны өңдеу үзіндісінің TРaintBox-пен салыстырмалы координаттарымен анықталады.
|
|
FileListBox
|
Арнайы тізімді ListBox, Мұндағы көрсетілген деректориядағы (Directory қасиеті) файлдардың тізімін шығаруға болады. Файлдар атына Mask қасиеті арқылы олардың түрін анықтауға болады.Сонымен қатар, FileEdit қасиеті арқылы файл түрін редакциялауға мүмкіндік туғызатын редакторды анықтауға болады.
|
Кесте 5 жалғасы
|
|
|
Арнайы тізімді ListBox, Мұндағы ағымдағы табақшаның деректориялар құрылымы көрсетіледі.
|
|
DriveComВox
|
Арнайы ағымды табақшаны таңдау ComboВoxDirlist қасиеті арқылы TdirextoryListBox элементі басқа табақшаларға өту әрекеттерін қадағалап отырады.
|
|
Filter ComboВox
|
Арнайы файлдар атын таңдауға мүмкіндік туғызатын ComboВox. Файлдар тізімі Filter - фильтр сүзгіш қасиеті арқылы анықталады. Ол үшін (файл) FileList қасиетінде файл түрінің үлгісі анықталған TFileListBox элементі орнатылады.
|
|
Media Player
|
Мультимедиалық құрылғыларды (CD-ROM, MIDI т.с.с.) басқару жұмыстарын атқарады. Play, Stop, Record батырмаларымен қамтылған. Ал аталған құрылғылармен жұмыс істеу үшін қосымша арнайы құрылғылар және бағдарламалар қажет болуы мүмкін.
|
|
Ole Container
|
Ole – объектілерін орналастыруға болатын жабдық (контейнер).
|
|
DDEClientConv,
|
DDE байланысын ұйымдастыру үшін қолданылатын 4 компонент. компоненттер арқылы DDE – сервер. Осы (шығар көзі) және DDE - клиент (қабылдаушы) қосымшаларынан құрастыруға болады.
|
|
DDEClientItem,
|
|
DDEServerConv,
|
|
DDEServerItem,
|
Delphi ортасының құрамына бірнеше компоненттер кіреді. Солардың кейбір маңыздыларын қарастырайық.
Сурет 1.8 Standard парағы
Standard парағының құрамына келесі компоненттер кіреді:
Кесте 6 Standard парағы компоненттері
Белгі
|
Аты
|
Атқаратын жұмысы
|
|
Label
|
Белгі. Компонентке шағын жазу орналастыру мақсатында қолданылады.
|
|
Edit
|
Енгізу қатары. Бір мәтіндік жолды енгізу, көрсету және түзету амалдарын орындауға қолданылады.
|
|
GroupBox
|
Элементтер тобы. Бір мағыналық компоненттерді біріктіру.
|
Additional парағы. Additional парағының құрамына сұхбаттасу терезелерін орнату үшін қолданылатын келесі компоненттер кіреді «2.2-сурет».
Сурет 1.9 Additional парағы
Additional парағының құрамына келесі компоненттер кіреді. Компоненттер мен олардың функциясын қарастырайық «Кесте 1.7».
Кесте 7 Additional парағы компоненттері
Белгі
|
Аты
|
Атқаратын жұмысы
|
|
BitBtn
|
Бетінде суреті және жазуы бар нұсқаулық батырма
|
|
Image
|
Сурет. Осы компоненттің көмегімен суреттерді, пиктограммалар мен метофайлдарды шығаруға болады.
|
Кесте 7 жалғасы
|
|
Bevel
|
Жиектеу. Терезенің бір аумағын үш өлшемді жиекпен немесе белдеулермен жиектеу.
|
|
SpeedButton
|
Пиктограммалық батырма. Әдетте негізгі менюдің опцияларына қол жеткізу үшін қолданылады.
|
System парағы. Бұл парақты компоненттері DDE, OLE таймер және т.с.с. жүйелі сервистік элементтеріне қол жеткізуге мүмкіндік туғызады «2.3-сурет».
Сурет 1.10 System парағы
Достарыңызбен бөлісу: |