Жұмыстың мазмұны: Кіріспе


Берілгендерді енгізу және шығару. InputBox функциясы



бет2/3
Дата28.01.2018
өлшемі0,51 Mb.
#35484
1   2   3

Берілгендерді енгізу және шығару. InputBox функциясы.

ShowMessage процедурасы. Типті түрлендіру

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

Меншіктау командасының программада жазылуы әдеттегідей, мысалы, x:=4.7;

Енгізу терезесі Delphi-дің стандартты InputBox функциясының терезесі. Программмада InputBox функциясын пайдалану командасының жазылу үлгісі:

< айнымалы > := InputBox (‘< тақырып >’,’< түсініктеме >’,’< мән >’) мұндағы айнымалы – мәні функция терезесіне енгізілетін жолдық типті айнымалы; атауы (InputBox функциясының мәні әр кезде жолдық (String)) типті; Мән меншіктелетін айнымалы (х) программада x:string түрінде сипатталуы тиіс);

тақырып – енгізу терезесінің тақырыбы ретінде жазылатын мәтін;

түсініктеме – енгізу терезесінің ішінде жазылатын түсініктеме мәтін;

мән – функция терезесі көрінген кезде оның енгізу өрісінде көрінетін мәтін. Әдетте оны бос етіп қалдырады. Мысалы, программада x:=4.7 меншіктеу командасын InputBox функциясын пайдаланып, мынадай түрде беруге болады: x:= InputBox (‘Аргумент мәні’,’x=’,‘ ’);

Терезенің енгізу өрісіне 4,7 мәнін енгізіп, OK түймесін шерту керек. Ол меншіктелетін айнымалы (X) жолдық типті етіп қабылданатындықтан, стандартты типті түрлендіру функцияларын пайдаланып, оны сандық типті етіп түрлендіруге болады.

Стандартты типті түрлендіру функциялары


Функция

Орындайтын іс-әрекеті

StrToFloat(x)-
FloatToStr(x)-

FloadToStrF(x,f,s,o)-

StrToInt(x)-
IntToStr(x)-


Жолдық типті х айнымалысын нақты санға түрлендіру;

х нақты санын жолдық типті етіп түрлендіру;

х нақты санын форматты жолдық типке түрлендіру.

Мұндағы

f формат (кескіндеу форматы). Ол көбінесе ffGeneral не ffFixed түрінде жазылады;

s-барлық цифрлар саны (дәлдік);

o- ондық нүктеден соң жазылатын цифрлар саны (ондық дәлдік), мысалы, FloattostrF(x,ffFixed,7,3);

Жолдық типті х айнымалысын бүтін санға түрлендіру;

х бүтін санын жолдық типті етіп түрлендіру;

Кесте 1 Стандартты типті түрлендіру функциялары
Delphi-де нәтижені ShowMessage прцедурасының терезесіне шығаруға болады. Процедураның жазылу түрі:

ShowMessage(s);

Мұндағы, s- жолдық типті өрнек. Егер ол сандық типті болса, оны жолдық типке түрлендіру үшін s аргументінің орнына типті түрлендірудің сәйкес функциясын енгізу керек. Мысалы, s нақты типті сан болса, оны шығару терезесінде көрсету операторының мынадай түрде жазылуы мүмкін: ShowMessage (FloatStr(s)) немесе ShowMessage (FloatToStrF(s, ffgeneral,7,3));

Жүйе соңғы операторды оқып шығып, жеті цифрдан тұратын нақты санды символдық типте ShowMessage терезесінде көрсетеді.

1-мысал. x=4.8 үшін y=3x+5/3 функциясының мәнін есептеу керек. X мәні InputBox терезесі арқылы енгізілсін, y мәні ShowMessage терезесінде көрсетілсін.

1. File-New Application командасын беріп, жаңа проект ашу. Form1терезесі көрінеді.

2. Форманы екі рет шерту. Unit1.pas атаулы модуль құрылады да, код терезесінде OnCreate оқиғасын өңдеуіш процедурасының дайындамасы көрінеді.

TForm1.FormCreate форманы екі рет шерту оқиғасынан жауап ретінде құрылатын процедураның құрама атауы. Ол нүкте арқылы ажыратылған екі бөлімнен құралған: біріншісі – класс атауы (TForm1) (Delphi-де әрқайсысы ұқсас толық бір іс-әрекетті орындайтын программалар тобы не, басқаша айтқанда, әдістер немесе қасиеттер ортақтығымен сипатталатын объектілер жиынтығы класс деп, олардың біреуі класс данасы делінеді. Объект орындай алатын әрекет әдіс деп аталады); екіншісі процедураның өз аты.Олобъект және оқиға атауларының қосындысынан тұрады(оқиға атауының алдына On қосымшасы жазылмайды).

Компоненттер палитрасына енгізілген әр компонент жеке класқа тиісті. Ол формаға кірістірілгенде сандық индекс қосылып, класс атауын алады. Барлық класс атауларын Т әрпінен бастап жазу келісілген. Мысалы, TForm1-TForm стандартты класының үлгісі бойынша құрылған класс атауы, 1-оның индексі.

3.Процедура дайындамасына процедура денесін жазу:

Procedure Tform1.FormCreate ( sender:Tobject);

Var x,y:real; x1:string;

Begin

X1:=InputBox(‘ ’,’x=’,’ ’);



X:=StrToFloat (x1); y:=3*x+5/3;

ShowMessage (FloatToStr(y));

End;

Бұл форманы екі рет шерту (OnCreate) оқиғасына сәйкес жазылған оқиғаны өңдеу процедурасы.



4.Іске қосу командасын беру. Ол Run мәзірінің Run пункті арқылы не F9 клавишін басу арқылы іске асырылады.

5.Терезеге 4,8 мәнін енгізіп, OK түймесін шерту. Ішінде функцияның символдық мәні жазылған Project1 тақырыпты шығару терезесі көрінеді. Оның OK түймесі шертілсе, терезе жабылады.


Берілгендерді формада енгізу және шығару Проектіні сақтау және ашу. Компиляциялау

Delphi-де компоненттер панеліне формаға түрлі компоненттер орнатып, олардың оқиғаларын өңдеуіш процедураларын құру – визуальды программалаудың түйінді негізі.

Мысалы, берілгендерді енгізу және шығару үшін компоненттер панелінің Standard қосымша бетіндегі мәтіндермен жұмыс істейтін TEdit (енгізу өрісі), TLabel (шығару өрісі) және TButton (командалық түйме) компоненттері жиі пайдаланылады. Мысалы, формада Edit1 өрісін орнатқан соң іске қосу командасын беріп және сәйкес өріске меңзерді енгізіп, пернелер тақтасы арқылы бір жолдық мәтін енгізуге және оны редакциялауға болады.

Формада орнатылған TEdit, TLabel компоненттерінің Caption, Text қасиеттерінің мәндерін программа арқылы өзгертуге болады. Ол үшін сәйкес операторларға объект атауы жазылып, нүкте қойылады да, оның соңына қасиет атауы енгізіледі. Қасиетке мән меншіктеу тәсілі әдеттегідей. Мысалы:

Label1.Color:=clGreen;//Green-жасыл түс

Label1.Caption:= ’Біз студенттерміз’;

Edit1өрісіне енгізілген қарапайым мәтінді (S) Label1 өрісіне шығаруға болады. Ол үшін процедура денесін мынадай етіп алу жеткілікті (Edit1.Text - Edit1 объектісінің Text қасиетін программа арқылы орнату әдісі):

Var s:string;

Begin

S:=Edit1.Text;



Label1.Caption :=s;

End;


Формаға TButton компонентін орнатып, оны программаны іске қосу түймесі ретінде пайдалану қиын емес.
Проектіні дайындап болған соң оны сақтау үшін File- Save All командасын беру керек. Егер проект алғаш рет сақталынып жатса, онда модульді сақтау үшін сұралатын Save Unit1.As атаулы терезе көрінеді. Проект сақталу үшін арнайы бума дайындалмаған болса, ол Projects (C:\Program Files\ Borland\ Delphi 5\Projects) бумасында сақталады. Бірақ пайдаланушы Сақтау терезесінде жаңа бума құрып, проектіні сонда сақтағаны жөн. Ол оны іздеп табуды жеңілдетеді. Терезенің Файл аты өрісіне модуль атауын енгізіп, Сақтау түймесін шерту керек. Модуль .pas кеңейтілуі бойынша сақталып қойылады да, экранда проект аты сұралатын терезе көрінеді.

Файл аты өрісіне проект атын енгізіп, Сақтау түймесін шерту керек. Проект файлы .dpr кеңейтілуі бойынша сақталады да, негізгі модуль атауы осы атауға өзгертіледі. Ол программа атауы ретінде қабылданады.

4-сурет. Модульді сақтау терезесі




Компонеттер палитрасы жөнінде

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

Компоненттер кітапханасын визуальды компоненттер кітапханасы ( Visual Component Library, VCL) деп атайды. Компонент дегеніміз – белгілі қасиеттерге ие функционалды элемент. Компоненттер арқылы бағдарламаның негізі қаланады.

Компоненттер палитрасында келесі парақтар болады:



  • Standard – жиі қолданылатын құраушылардан тұратын стандартты парақ. Standard бетіне енгізілген кейбір компоненттер 1-кестеде көрсетілген.



Аталуы

Іс-әрекеті

MainMenu

PopupMenu


Edit

Label


Button
ScroоlBar


Программа мәзірін құру

Тышқанның оң түймесін шерткен кезде экранға шығатын (контекстік) мәзір құру

Жолдық мәнді енгізу, редакциялау (мәтіндік редактор).

Бір жолдық мәтінді (жазбаны) шығару

Командалық түйме. Оның OnClick оқиғасын өңдеуіш процедурасы бір іс- әрекетті орындайды.

Басқару белдеушесі (Windows терезесіндегі сияқты)





1-кесте



  • Additional (Қосымша) бетіне енгізілген компоненттер сұхбаттық терезелердің көрінісін түрлендіру үшін пайдаланылады.

  • Timer (Таймер) – нақты уақыт аралықтарын есептеу;

  • System (Жүйе) бетіне OLE (байланыстыру және орнату) течнологиясы бойынша берілгендерді түрлі программалар арасында алмастыратын және т.б. іс-әрекеттерді орындайтын компоненттер енгізілген. Мысалы,

  • PaintBox (Сурет қорабы) – графикалық кескіндер енгізілген төртбұрышты облыс құру;

  • OLEContainer (OLE контейнер) – байланыстыратын және орнатылатын объектілерді қабылдау контейнері;

  • MediaPlayer – Мультимедиалық құрылғылармен жұмысты басқару;

  • Win32-бетіне -32-разрядты операциялық жүйелермен жұмыс жасауға арналған компонентер енгізілген ;

  • Animate (жандандыру, қозғалыс әсерін ұйымдастыру)-қозғалыс әсерін ұйымдастырады. Компонент формаға орнатылған кезде соңына индекс қосылып, класс атауын алады.

  • Samples (Модель) бетіне енгізілген компоненттер:

  • ColorGrid (Түстер торы) –түстер кестесі. Ол 16 түстік палитрадан негізгі және фон түсін таңдау;

  • Calendar (Календарь) – ағымдық күн белгіленген ай календарын көрсету (жылдық календарды Win32 панелінің MonthCalendar компонентін формада орнату арқылы шығаруға болады), т.б.

  • Interfase – Borland Database Engine (BDE) және Active Data Objects арқылы (ADO) Interfase- пен тікелей байланыс;

  • Midas – паралель ағымдармен деректер базасының қосымшасын тұрғызу;

  • Internet Express – Internet Express қосымшаларын құру;

  • Internet – Internet- пен бірге жұмыс істейтін қосымшалар үшін арналған компоненттер;

  • FastNet – Internet- ке жетудің әртүрлі хаттамалары;

  • Decision Cube – мәліметтерді талдау;

  • Qreport – есеп берулерді жедел дайындау;

  • Dialogs – « Файлды ашу » типіндегі сұхбаттар, жүйелік сұхбаттар;

  • Win 3.1 – Windows 3.x стиліндегі компоненттер;

  • Samples – аяқталмаған құжаттық компоненттер үлгілері;

  • ActiveX – ActiveX- тің активті элементтері;

  • Servers – кең таралған COM серверлеріне арналған VCL қабықшалары;


Жобалардың негізгі файлдары Файлдардың келесі тобы компилятормен құрылады:

Delphi жобасы формалардан, модульдерден, жоба параметрлерінің қондырғыларынан, ресурстардан тұрады. Бұл ақпараттың барлығы файлда орналасады. Бұл файлдардың көбісі автоматты түрде Delphi- де жасалады. Сіз қосымшаны жобалаған кезде Delphi келесі файлдарды құрады :



  • Жоба файлы (.dpr) – бұл мәтіндік файл модульдер және формалар туралы ақпаратты сақтау үшін қолданылады. Онда ининциализациалау операторы және орындау үшін бағдарламаны іске қосу бар.

  • Модуль файлы (.pas) – сіз жасаған әрбір формаға код сақтау үшін қолданылатын модульдің тексттік файлы сәйкес келеді. Кейде сіз формамен байланысты емес модульдер құра аласыз. Delphi процедуралары мен функциялары модульдерде сақталады.

  • Форма файлы (.dfm)– сіздің формаларыңыз туралы ақпаратты сақтау үшін құрылады.

  • Файл жобаның параметрлері (.dfo) – бұл файлда жобаның параметрлерінің қондырғылары сақталады.

  • Пакеттер туралы ақпараттар файлы (.drf) – бұл бинарлы файл жоба пайдаланатын пиктограмма және басқа ресурстардан тұрады.

  • Файлдар тобының файлы (.bpg)– егер сіз жобалар тобымен жұмыс істесеңіз құрылатын файл.

  • Ресурстар файлы (.res)– бұл бинарлық файл пакеттерімен жұмыс істегенде қолданылады.

  • Пакет файлы (.dpk)– бұл пакеттің екілік файлы;

  • Резервті копиялар файлы (-.dp,-.df,-.pa)– модуль, форма, жоба файлдары үшін резервті копиялар файлы;

  • Терезе конфигурацияларының файлы (.dsk)– бұл файлда барлық терезелердің конфигурациялары сақталады.

  • Орындаушы файл (.exe)– сіздің қосымшаңыздың орындаушы файлы. Ол OCX, DLL кітапханасын, сондай-ақ орындалу уақытының пакетін қолданбасаңыз автономды түрде орындалатын файл;

  • Модульдің объектті файлы (.dcu) – нәтижелі орындалатын файлға өтетін (.pas) модулінің орындалған файлы; Динамикалық біріктірілетін кітапхана – сіздің өзіңіздің DLL жобалаған жағдайда құрылады.

  • Пакет мазмұнының файлы (.dcp) - файлдарының тізімінен және пакет атауынан тұрады;

  • Орындалу уақытының пакеттік файлы – орындалу уақытының пакеті - Delphi-дің арнайы спецификасы бар DLL кітапханасының файлы.

Datebase Desktop- тың көмегімен кестелер құру

Datebase Desktop – бұл Paradox және Dbase жергілікті деректер базасы мен Interbase, Oracle, Informix, Sybase SQL- серверлік деректер базаларының әртүрлі форматтағы кестелермен интерактивтік жұмысы үшін Delphi- мен бірге қамсыздандырылатын және де Paradox- ке өте ұқсас утилита. Орындалатын утилиттер файлы DBD.EXE деп аталады және ол DBD директиясында орналасқан.




5-сурет Datebase Desktop- тың көмегімен кестелер құру


Datebase Desktop- ты іске қосу үшін оның иконын екі рет шертсе болғаны. Datebase Desktop іске қосылғаннан кейін жаңа кесте құру үшін File /New /Table менюіндегі командаларды таңдау керек. Сонда кесте типінің диалогтық терезесі шығады. Пішімнің әртүрлі нұсқаларын іске қоса отыра, сіз ұсынылған пішімдердің ішінен кез келгенін таңдауыңызға болады. Кесте типін таңдағаннан кейін Datebase Desktop сізге кестенің өрісін және оның типін анықтайтын және әр пішім үшін өз ерекшелігі бар диалогтық терезені көрсетеді ( 5-суретті қара).




6-сурет Диалогтық терезе
Paradox пішімді кестедегі өріс аты жазылуы төмендегідей ережелерге бағынатын жолды көрсетеді:


  • Аты 25 символдан аспау керек,

  • Аты бос орыннан басталмау керек;

  • Атының құрамында тік, жай фигуралық жақшалар [ ], ( ), { }, тире және символдар комбинациясы «тире» және «үлкен» (– >) болмау керек;

  • Мүмкін ол басқа симвлдардың атынын қатысып тұрса да , атының құрамында # символы болмау керек.

Өріс аты dBase пішімді кестесінде жазылуы Paradox- тан ерекшеленетін ережеге тәуелді болатын ережені көрсетеді:


- Аты бір симвлодан артық болмауы керек;

- Атқа бос орындар жіберілмеуі керек.

Сондықтан, көріп отырғанымыздай, dBase пішімінде өріс аты өте қатаң ережелерге бағынады. Енді Inter Base пішімінде өріс атының жазылуының тәуелді болатын ережелерін тізбектесек:
- Аты 31 символдан артық болмау керек;

- Аты A-Z, a-z әріптерінен басталуы қажет;

- Өріс аты құрамына әріптер (A-Z, a-z), сандар, $ таңбасы және астын сызу символы ( _ ) кіруі мүмкін;

- Атқа бос орындар жіберілмейді;

- Кесте аты үшін Inter Base- ке қатысты сөздерді қолдануға тыйым салынады.

Келесі қадам өріс типінің тапсырмасынан тұрады. Кесте пішіміне байланысты өріс типтері өте үлкен дәрежеде ерекшеленеді. Өрістер типінің тізімін алу үшін «Type» бағанына көшіп, содан кейін бос орынды басып немесе тышқанның оң батырмасын шерту керек.

Paradox, dBase және Inter Base пішімдері үшін қажетті өріс типінің тізбегін келтірейік. Сонымен Paradox пішімінің кесте өрісі келесідей типтерді қабылдауы мүмкін:

Paradox пішімінің өрістер типі.



  • Alpha – кез келген басылатын символдан тұратын, ұзындығы 1-255 байттық жол;

  • Number – мағынасы оң және теріс болуы мүмкін, ұзындығы 8 байттық сандық өріс. Сандар диапазоны – 10- нен 10- ге дейін;

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

  • Short – тек қана - 32768- ден 32767- ге дейінгі диапазонындағы бүтін сандардан тұратын, ұзындығы 2 байттық сандық өріс.

  • Long Integer – -2147483648- ден 2147483648- ге дейінгі диапазоныдағы бүтін сандардан тұратын және ұзындығы 4 байт болатын сандық өріс.

  • # BCD – BCD (Binary Coded Decimal) пішімінің деректерінен тұратын сандық өріс. Басқа сандық өрістерге қарағанда есептеу жылдамдығы аз, бірақ нақтылығы жоғары. Ондық нүктеден кейін 0 мен 32 сандарының аралығындағы сандарды қабылдауы мүмкін.

  • Date – біздің заманымызға дейінгі 9999- шы жылдың 1- ші қаңтарынан біздің заманымыздың 9999- шы жылының 31- ші желтоқсанына дейінгі даталардан тұратын , ұзындығы төрт байттық даталар өрісі.

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

  • @ Timestamp – уақыт пен даталардан тұратын, ұзындығы 8 байттық жалпылама даталар өрісі.

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

  • Formatted Memo – бұл Memo- ға өте ұқсас өріс. Өрістің Memo- дан бір артықшылығы – мәтіннің қарібін беру мүмкіндігі.

  • Binary – кез келген екілік мәліметтерден тұратын өріс. Бұл өріс кез келген ұзындықты қабылдауы мүмкін. Кесте құру кезінде көрсетілетін өлшемдер кестеде сақталынған барлық символдардың санын қайтарады, ал қалғандары MB. кеңейтілуіндегі жеке файлдарда сақталады. Бұл өріс Inter Base- тегі BLOb өрісіне өте ұқсайды.

  • Bytes – кез келген деректерден тұратын, ұзындығы 1-255 байттық сандар жолы.

dBase пішімінің кестелер өрісі келесідей өрістерді қабылдауы мүмкін:

  • Character (Alpha) – кез келген баспалық символдардан тұратын, ұзындығы 1-254 байттық жол;

  • Float (Numeric) – мәндері оң және теріс болуы мүмкін пішімдегі өлшемі 1-120 байттық сандық өріс. Бұл өте үлкен шамалардан тұрады. Сондықтан бұл өрістермен жұмыс жасаған кезде шамаларды дөңгелектеудің салдарынан болатын қателерді қадағалап отыру керек. Ондық нүктелерден кейінгі цифрлардың саны бүкіл өрістің өлшеміне қарағанда 2-ге кем болу керек;

  • Number (BCD) – BCD пішіміндегі деректерден тұратын өлшемі 1-20 байттық сандық өріс. Сандық өлшемдерге қарағанда бұл өрістің есептеу жылдамдығы бірнеше төмен болғанымен, нақтылығы біршама жоғары. Ондық нүктелерден кейінгі сандардың саны бүкіл өрістің өлшеміне қарағанда 2-ге кем болу керек;

  • Date – ұзындығы 8 байттық даталар өрісі. Келісім бойынша қысқа даталар пішімі қолданылады (Short Date Format);

  • Memo – ұзындықтарының жалпы қосындысы 255 байттан аспайтын және символдарды сақтау үшін қажетті өріс. Өріс кез келген ұзындықты қабылдауы мүмкін. Бұл өріс жеке файлдарда сақталады. DateBase Desktop-тың деректерді Memo типті өріске қоюға мүмкіндігі жоқ;

  • OLE - өзінің өңделуі кезінде өзін құраған қолданбаларды шақыратын дыбыс, бейне, құжаттардан, яғни OLE деректерінен тұратын (Object Linking and Embedding) тұратын өріс. Бұл өріс те жеке файлдарда сақталады және кез келген ұзындықты қабылдауы мүмкін;

  • Binary – кез келген екілік мәліметтерден тұратын өріс. Берілген өріс DBT кеңейтілуіндегі жеке файлдарда сақталады және кез келген ұзындықты қабылдауы мүмкін. Бұл InterBase-тегі Blob өрісінің толық аналогы;

  • InterBase пішімінің кестелер өрісі төмендегідей типтерді қабылдауы мүмкін:

  • Short – тек қана -32768-ден 32767-ге дейінгі диапазонындағы бүтін сандардан тұратын ұзындығы 4 байттық сандар өрісі;

  • Long – -2147483648-ден 2147483648-ге дейінгі диапазонындағы бүтін сандардан тұратын, ұзындығы 4 байттық сандар өрісі;

  • Float – мәндері оң және теріс болуы мүмкін, ұзындығы 4 байттық сандар өрісі. Сандар диапазоны 3.4*10-нен 1.7*10-не дейінгі мәні 7 символдық сандарды қамтиды;

  • Double – мәндері оң және теріс болуы мүмкін, ұзындығы 8 байттық сандар өрісі. Бұл өрістің ұзындығы пиктограммаға байланысты және сандар диапазоны 1.7*10-нен 1.7*10-не дейінгі мәні 15 символдық сандарды қамтиды;

  • Array – деректер жиымдарынан тұратын өріс. InterBase 16-лық өлшемдегі жиымдарды анықтауға мүмкіндік береді. Өріс кез келген ұзындықты қабылдауы мүмкін. DateBase Desktop-тың Array типті өрістерді редакциялауға, сонымен қатар оларды құруға да мүмкіншілігі жоқ;

  • TextBlob – тек қана мәтіндік мәліметтерден тұратын Blob өрісінің бағыныңқы типті өрісі. Өріс кез келген ұзындықты қабылдауы мүмкін. DateBase Desktop-тың TextBlob типті өрісті редакциялауға мүмкіншілігі бар.

Сонымен, Delphi үшін «туысқан» болып табылатын өрістердің барлық типтерімен таныстық. Ал, кестені құрып болғаннан кейін, оны кесте пішіміне байланысты болатын тізімдер қасиеттерімен байланыстыруға болады. Сондықтан Paradox пішімді кесте үшін келесідей тапсырма беруге болады:

  • Validity Checks (дұрыстықты тексеру) – бұл жазбалар өрісіне қатысты болады және минимал, максимал мәндерін, сонымен қатар келісім бойынша алынған мәндерді анықтайды;

  • Table bookup (қадағалау кестесі) кестеге басқа кестеге енгізіліп қойылған мәндерді пайдаланып, мәліметтерді енгізуге мүмкіндік береді;

  • Secondary Indexes (екілік индекстер) бірлік кілтпен жөн сілтелінген реттегі деректерге қатынауға мүмкіндік береді;

  • Referential Integrity (сілтемелік тұтастық) кестелер арасындағы байланысқа тапсырма беруге және осы ядро деңгейіндегі байланыстарды қолдауға мүмкіндік береді;

  • Table language (кестелер тілі) кестенің тілдік драйверлері үшін тапсырма беруге мүмкіндік беру;

dBase кестелерінде бірлік кілттер болмайды. Сондықтан бұл жағдайдан бірегей ( Unique) және көтермелеу (Maintained) индекстерді (Indexes) анықтау жолы арқылы шығуға болады. Одан басқа dBase кестесі үшін және тілдер кестесі үшін (Table Language) символдық деректер көрінісін және сұрыптауын басқаратын тілдік драйверлерді анықтауға болады. Барлық пішімдегі кестелердің қосымша қасиеттерін анықтау үшін терезенің оң жақ жоғарғы бұрышында (Table Properties) орналасқан «Define» түймесін басу керек. InterBase үшін берілген түйме «Define Index» деп аталады және бірлік кілттерді емес, тек қана индекстерді анықтауға мүмкіндік береді. Бұл әрекеттердің барлығы тек қана кесте құру үшін ғана емес, сонымен қатар құрылып қойылған кестелер үшін де орындалады. Бұл үшін Table /Restructure Table (дәл сол уақыт мезетінде ашық тұрған кестелер үшін) және Utilities/ Restructure (кестелерді таңдау мүмкіншілігімен бірге) командалары қолданылады.

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




Delphi ортасының графикалық мүмкіндіктері. Сурет салу. Сурет салу аумағы
Delphi ортасының графикалық мүмкіндіктерін пайдалану үшін Windows- тың графикалық құралдарымен жұмыс атқаруды айтарлықтай жеңілдететін келесі кластар қолданылады. TPaintBox – кез келген бейнені салуға лайықты және арқаумен қамтылған терезе, TCanvas – суретті салуға лайықты аумақ- арқау, TPen – қалам, TBrush – бояу жаққыш, TPicture – бейненің контейнері, TGrafic – графикалық объектінің, бейненің негізі, TBitmap – растрлық бейне, TIcon – пиктограмма, TMetafile – метафайл және т.с.с.

Қарапайым геометриялық фигураларды сызу үшін Additional парағының Shape компоненті қолданылады. Осы компонент арқылы бейнелеу әрекеттерін орындау - графикалық редакторда жұмыс атқарумен бірдей болып келеді. Shape- пен анықталатын фигураның түрі компоненттің Shape қасиеті арқылы анықталады және оның қабылдайтын мәндері келесі:



  • StCircle – шеңбер;

  • StEllipse – эллипс;

  • StRectangle – төрт бұрыш;

  • StRoundRect – жұмырланған төрт бұрыш;

  • StRoundSquare – жұмырланған квадрат;

  • StSquare – квадрат;

Delphi ортасындағы Windows- тың TCanvas (арқау- сурет салуға лайықты аумақ), TFont (қаріп), TPen (қалам), TBrush (бояу жаққыш) құралдары арқылы программаларда графиканың мүмкіндіктерін қолдануға, яғни әртүрлі бейнелерді программаның орындалу барысында форманың бетіне орналастыруға, сызуға болады.

Осы сәтте графикалық бейне қарапайым фигуралар жиынынан (нүкте, шеңбер ,төрт бұрыш немесе мәтіннен) құрылады. Сурет салу үшін TCanvas класының туындысы Canvas компоненті қолданылады. Осы компоненттің бетіне бейнесін сызу мүмкіндігімен қамтылған басқа объектілер салынады. Стандартты басқару терезелері (мысалы, Memo немесе List) арқауды қажет етпейді, себебі олар Windows арқылы сызылады.

Canvas объекті келесі қасиеттер, оқиғалар және әдістермен қамтылған:



  • Қаріп, қалам, бояу жаққышты қолдану арқылы бейнелерді сызу;

  • Фигура және сызықтарды салу және оларды бояу;

  • Мәтінді шығару;

  • Графикалық бейнелерді шығару;

  • Ағымдағы бейнелердің өзгеруіне сәйкес сезіндіру үзіндісін бағдарламалау.

Canvas объектісінің қасиеттерін және әдістерін қолдану арқылы әртүррлі суреттерді, көпбұрыштыларды және мәтінді шығаруға болады, бірақ бағдарлама құрамында арқаудың OnPaint – оқиғасын өңдеуші үзіндісі міндетті түрде болуы керек.

  • Canvas объектісінің TBrush түрінің Brush қасиетті келесі параметрлерімен анықталады:

  • Bitmap (түрі – Tbitmap) – мөлшері 8*8 сурет, осы суретпен экрандағы аумақ толтырылады немесе боялады;

  • Color (түрі – Tcolor) – бояудың түсін анықтайды;

  • Handle (түрі - Tbrush) – Windows-тың API процедураларын тікелей шақырғандағы бояу жаққышты қолдануға мүмкіндік береді;

  • Style (түрі – TbrushStyle) – бояудың түрін анықтайды. Бұл параметр Bitmap қасиетімен бәсекелеседі: екеуінің қайсысы соңғы болып анықталса, бояудың түрін сол қасиет анықтайды.

    • ClipRect (түрі – Trect) қасиеті – тек қана оқуға тағайындалған. Ол графикалық бейнені шығаруға арналған төртбұрышты анықтайды.

    • CopyMode (түрі – Tcopy Mode) қасиеті арқылы көшірменің түрін, яғни өзгеріссіз немесе екі есе үлкейту, бейненің түсін инверсия арқылы көшіру және т.с.с анықтайды.

    • Font (түрі – Tfont) Canvas бетіне шығарылатын мәтіннің қарібін анықтайды. Осы параметрдің келесі қасиеттерін ажыратады:

  • Color (Tcolor) – мәтіннің түсін анықтайды;

  • Height (Integer) – қаріп мөлшерін пиксель өлшемінде анықтайды;

  • Name (TfontName) - қаріптің атын анықтайды (мысалы, Ariel, Times New Roman т.с.с.);

  • Size (түрі Integer) – қаріп мөлшерін пункт (1 пункт- 1/72 дюйм) өлшемінде анықтайды; Бұл параметр Height қасиетімен тікелей байланысқан: екеуінің біреуі өзгергенде екіншісі автоматты түрде өзгеріп отырады;

  • Style (түрі - TfontStyle) – қаріптің түрін анықтайды (курсив, жуандылығын, асты сызылған және т.с.с.).

1-мысал: k+1 функциясының диаграммасын құру керек:
unit Unit1;
interface
uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, TeEngine, Series, ExtCtrls, TeeProcs, Chart;
type

TForm1 = class(TForm)

Chart1: TChart;

Series1: TBarSeries;

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }



public

{ Public declarations }

end;
var

Form1: TForm1;


implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);

var k:integer;

begin

for k:=-5 to 5 do



if k>0 then begin

chart1.SeriesList [0].AddXY(k,(k*k*k+1));


end;end;
end.


7-сурет k+1 функциясының диаграммасы

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


Бағдарлама:
unit Unit1;
interface
uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls;
type

TForm1 = class(TForm)

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }



public

{ Public declarations }

end;
var

Form1: TForm1;


implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);

var


p:array[1..9] of TPoint;

begin


with canvas do

begin


brush.color:=clred;

brush.style:=bsDiagCross;

pen.color:=clblack;

Polygon([Point(50,40),point(100,40),point(130,70),point(130,100),point(100,130),point(50,130),point(20,100),point(20,70)]);

begin

Brush.color:=clyellow;



pen.color:=clblue;

Polygon([Point(230,40),point(350,40),point(310,130),point(190,130),point(230,40)]);

polygon([point(230,40),point(310,130)]);

polygon([point(350,40),point(190,130)]);end;

begin

Brush.Style:=BsSolid;



polygon([point(430,40),point(400,40),point(400,170),point(550,170),point(550,40),

point(520,40)]);

begin

Brush.Style:=BsSolid;



Brush.color:=clgreen;

Polygon([point(400,70),point(475,10),point(550,70),point(400,70)]);

begin

Brush.color:=clred;



Polygon([point(435,90),point(515,90),point(515,140),point(435,140),point(435,90)]);

Polygon([point(435,110),point(515,110)]);

Polygon([point(475,90),point(475,140)]);

end; end; end;end;end;


end.


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


Достарыңызбен бөлісу:
1   2   3




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет