Редактор І. В. Ращупкіна
Begin
if CheckBox1.Checked = True then
Label1.Caption:=’Введите число’
Else
Label1.Caption:=’ ‘;
end;
7. Егер бағдарламаны орындалу уақытында CheckBox1 опциясында шерту орындалса Delphi TForm1.CheckBox1Click (Sender: TObject) процедурасын орындайды.
8. Бағдарлама кодын және жобаны fam2.pas и Pr_fam2.dpr аттарымен сақтаңыз.
9. Жобаның орындалуын тексеріңіз және орындауға жіберіңіз. Ол үшін келесі іс-әрекеттердің біреуін орындаңыз: Run мәзіріндегі Run командасынтаңдаңыз, <F9> пернесін басыңыз, немесе саймандар тақтасындағы Runбатырмасын шертіңіз.
4 кезең. Жаңа жобаны құру
1. Келесі әрекеттерді орындайындайтын бағдаламаны құрыңыз. Бағдарламаны іске қосқаннан кейін «Сәлемдеме» батырмасына тышқанмен шертсе «Алғашқы жетістіктер!» деген хабарлама шығады. Бағдаламадан шығу үшін «Шығу» батырмасын шерту керек.
2. Жаңа жоба құрыңыз (File – New – Application).
3. Формада компонент батырмаларын: Labelбелгісін және екі Buttonбатырмасын орналастырыңыз.
4. Button2батырмасын ерекшелеңіз, Объектілер инспекторындағы (Object Inspector) Қасиеттер (Properties)вкладкасынаауысыңыз, Тақырып (Caption заголовок) қасиетін табыңыз және Button2тақырыбын «Шығу» тақырыбына өзгертіңіз.
5. Object Inspector терезесінің Events вкладкасына ауысыңыз, OnClick оқиғасын тауып, оның оң жағында екі рет тышқанмен шертіңіз. Тек бір ғана команда енгізіңіз: Close; (Close сөзінен кейін міндетті түрде нүктелі үтір қойыңыз).
6. Бағдарлама кодын және жобаны fam2.pas және pr_fam2.dpr аттарымен сақтаңыз.
7. Бағдарламаны іске қосыңыз. Сосын «Шығу» батырмасын шерту арқылы жоба терезесін жабығыз.
8. Форманы ерекшелеңіз және Object Inspectorтерезесінің Captionқасиетінде Form1 формасының атын «Жоба-2» ауыстырыңыз. Бұл бағдарламаның негізгі терезесінің тақырыбы болады.
9. Button1батырмасын ерекшелеп, Object Inspectorтерезесін Captionқасиетінде Button1батырмасының атын «Сәлемдеме» деген атқа ауыстырыңыз. Қажет болған жағдайда батырма ұзындығын ұзартыңыз.
10. Object InspectorтерезесініңEventsвкладкасына ауысыңыз және OnClickоқиғасын тауып, оның оң жағын екі рет тышқанмен шертіңіз. Келесі кодты енгізіңіз:
Label1.Caption := ‘Алғашқы жетістіктер!’;
11. Жобаны соңғы рет сақтаңыз. Іске қосыңыз және тестілеңіз.
12. Шығарылатын «Алғашқы жетістіктер!» репликасының түрін, түсін және өлшемін стандарттыдан айрықша етіп жасаңыз. Ол үшін Object Inspector Fontқасиетіжолағыныңоң жағын екі рет шертіңіз.
13. «Шығу» батырмасының түрін әдемілеуіне ауыстырыңыз. Батырманы ауыстыру үшін бар батырманы жою керек, ал басқасы Additionalвкладкасының компоненттер палитрасынан табу керек. Ол сол жақ шетте орналасқан және BitBtnдеп аталады. Сосын оның түрін Kindқасиетінің көмегімен өзгерту керек.
14. «Сәлемдеме» батырмасын басқаннан кейін «Бірінші және ақырғы емес!» хабарлама экранға шығатын етіп жасаңыз. Ол үшін Label1таңбабелгісінен Captionқасиетінің Button1батырмасының OnClickоқиғасын редакциялау кезіндегі мәнін өзгерту керек.
15. Орындалған pr_fam2.exe файлын Delphi ортасында емес Windows ортасында іске қосыңыз. Ол үшін Delphiден Windowsқа шығыңыз және к Windows сілтеуішін қолданыңыз.
16. Нәтижесін оқытушыға көрсетіңіз.
17. Delphiбағдарламасынан шығыңыз.
Бақылау сұрақтары
11. Unit.pas модулі неден тұрады?
12. Жобалаушы формаға компонентті орнатуда, код редакторы терезесінде қандай өзгерістер пайда болады?
13. Оқиғаларды өңдеу процедурасы қалай құрылады?
14. Процедура аттарын өздігінен анықтауға бола ма?
Тілдер және бағдарламалар технологиясы
№ 3 зертханалық жұмыс
«Сұхбат» атты жобаны құру
Орындалу уақыты : 2 часа Рейтинг: 1 балл
Жұмыстың мақсаты
Editенгізу жолы мен OnKeyPressоқиғалар өңдеушісімен жұмыс істеп үйрену.
Жұмыстың орындалу тәртібі
1 кезең. Delphi бағдарламасын жүктеу және жоба құру
4. Delphi жүктеңіз.
5. Келесі әрекеттерді орындайтын бағдарлама құрыңыз. Бағдарлама жүктелгеннен кейін қолданушы өзінің атын жарқырауыш мәтіндік мезгегіші бар тік төртбұрышқа енгізіп, мысалы, Нурлан есімі болсын, Enter п.ернесін басу.
: «Нурлан, сен оқығанды жақсы көресің бе?». Деген сұрақ шығады. Егер қолданушы «Иә», батырмасын басса, «Жарайсың !», деген сөз шығады. Егер «Жоқ» батырмасын басса, онда «Неге ? оқу керек » сөйлем шығады.
Бағдарламадан шығу үшін «Шығу» батырмасын шерту керек.
6. Жаңа жоба құрыңыз. Формаға «Сұхбат» атын беріңіз.
2 кезең. Қосымшаға компонеттерді орналастыру
5. Формаға үш Label белгісін, екі Button батырмасын, Edit компонетін және BitBtn батырмасын қойыңыз.
6. Екі белгіні және Edit компонетін форманың жоғарғы бөлігіне, одан кейін көлденең түзу бойымен екі Button батырмасын төменрек, сол жағынан үшінші Label белгісін, форманың еің төменгі жағының ортасына BitBtn батырмасын орналастырыңыз.
3 кезең. Компонеттер қасиеттерән Редакциялаужәне оқиғаны өңдеуші процодурасын құру.
10.Келесі әрекеттерді орындаңыз:
белгіленген объект
| Object Inspector
| қасиеттің және оқиғаның аты
| орындалатын амалдар
|
BitBtn1
| Properties
| Caption
| «шығу»
|
Kind
| bk Close
|
Label1
| Properties
| Caption
| «Өз атыңызды енгізіңіз және Enter басыңыз» жазуді енгізіңіз
|
Edit1
| Events
| OnKeyPress
| if key = #13 then
begin
Label2.Caption := Edit1.Text + ‘,
сен оқуды жақсы көресің бе?’;
end;
|
Button1
| Properties
| Caption
| «Иә»
|
Events
| OnClick
| Label3.Caption := ‘Жәрайсың!’
|
Button2
| Properties
| Caption
| «жоқ»
|
Events
| OnClick
| Label3.Caption := ‘Неге? Оқу керек.’;
|
4 кезең. Бағдарламаны сақтау және іске қосу
18. Бағдарламаның коды мен жобасын келесі аттарымен сақтаңыз. fam3.pas және pr_fam3.dpr Менің құжатым – Студент бумасы.
19. Бағдарламаны іске қосып тестілеңіз, одан кейін жоба «Шығу» батырмасы арқылы жабыңыз.
5 кезең. Компоненттер қасиеттерін өзгерту
1. «Иә» және «Жоқ» батырмаларын Enter батырмасын шертіп, ат енгізгеннен кейін ғана іске қосылатындай етіп жасаңыз.
Бұл үшін «Иә» және «Жоқ» батырмаларын Enabled қасиетінің мәнін бірдей False етіпорнатыңыз, ал EditKeyPressпроцедурасына қосыңыз
Button1.Enabled := true;
Button2.Enabled := true;
2. Сұхбатты қайталау мүмкіндігін қамтамасыз ету үшін Edit1, Label2, Label3 объектілерінің атын өшіріңіз. Ол үшін формаға тағы бір BitBtnбатырмасын орналастырыңыз. Kindқасиетінің bkRetryмәнін жәнеCaptionқасиетінің «Қайталау» мәнін орнатыңыз. «Қайталау» батырмасын басу арқылы бос жолдарын бағдарламалы түрде бағдарламалардың жазуы мен аттарының орнына енгізіңіз:
Label2.Caption := ‘ ‘;
Label3.Caption := ‘ ‘;
Edit1.Text := ‘ ‘;
3. Сұзбатты қайталағанда енгізу жолы қайтадан белсенді болатындай етіп жасаңыз.
Ол үшін келесі команданы енгізу керек:
Form1.ActiveControl := Edit1
4. Нәтижесін оқытушыға көрсетіңіз
5.Delphiбағдарламасынан шығыңыз.
Бақылау сұрақтары
15. Осы жобада қоданған компонетер формаға қалай орналастырылғанын айтып беріңіз?
16. Жобаға Editенгізу жолы қалай қолданылады?
17. Батырманың аты қалай өзгертіледі?
18. Жазуды қалай енгізеді?
19. OnClick және OnKeyPressоқиғаларын орындағанда не болады?
20. Атты енгізіп, батырманы басқанна кейін ғана батырма іске қосылуын қалаай жұзеге асырады?
Тілдер және бағдарламалау технологиясы
№ 4 зертханалық жұмыс
«Анықтама» атты жобасын құру
Орындалу уақыты: 2 сағ Рейтинг: 1 балл
Жұмыстың мақсаты
ListBox (тізім) компонентін қолдануын және ақпаратты енгізуге арналған қосымша редакторлармен жұмыс жасауын үйрену
Жұмыстың орындалу тәртібі:
1 кезең. Delphi бағдарламасын жүктеу және жобаны құру
7. Delphi жүктеңіз.
8. Жаңа жобаны құрыңыз. Формаға «Анықтама» деген атты беріңіз.
2 кезең. Формаға компоненттерді енгізу
7. Формаға ListBox компонентін, үш Label белгісін және BitBtn батырмасын орналастырыңыз ( Standard парағынан),.
8. ListBoxкомпонентін форманың сол жағына үш Labelбелгісін, BitBtnбатырмасын форманың оң жақтағы төменгі бұрышына орналастырыңыз.
3кезең. Компоненттердің қасиеттеріне түзетулерді енгізу және оқиғаларды өңдеу процедурасын құру
11.Келесі амалдарды орындаңыз:
белгіленген объект
| Object Inspector
| қасиеттің/оқиғаның аты
| орындалатын амалдар
|
BitBtn1
| Properties
| Kind
| bk Close
|
Caption
| «Шығу»
|
Label1
| Properties
| Caption
| RGB форматындағы түс жазу анықтамасы» жазбасын енгізіңіз
|
Label2
| Properties
| Caption
| «RGB түс форматын» енгізу
|
Label3
| Properties
| Caption
| «Атауды өшіру және түс кодын» енгізу
|
4кезең.бағдарламаны сақтау және іске қосу
20. Бағдарламаның коды мен жобасын келесі аттарымен сақтаңыз. fam3.pas және pr_fam3.dpr Менің құжатым – Студент бумасы.
21. Бағдарламаны іске қосып тестілеңіз, одан кейін жоба «Шығу» батырмасы арқылы жабыңыз.
5кезең. ListBox1 компонентімен жұмыс жасау
4. ListBox1объектісін белгілеңіз, Itemsқасиетін табығыз, оның оң жағындағы үш нүктелі батырмасын шертіңіз. Пайда болған терезеде келесі түстерді енгізіңіз, әрқайсысын жаңа жолда жазаңыз: black, white, red, green, azure, blue, purple, yellow, brown, orange, violet, gray.
5. Енгізген мәтінді color.txt деп сақтаңыз. Ол үшін тышқанның оң жақ батырмасын шертіп, Save командасын таңдаймыз. ОК батырмасын басыңыз.
6. Келесі амалдарды орындаңыз:
белгіленген объект
| Object Inspector
| қасиеттің және оқиғаның аты
| амалдар
|
ListBox1
| Events
| OnKeyPress
| if key = #13 then
case ListBox1.ItemIndex of
0: Label3.Caption := ‘черный 000000’;
1: Label3.Caption := ‘белый FFFFFF’;
2: Label3.Caption := ‘красный FF0000’;
3: Label3.Caption := ‘зеленый 00FF00’;
4: Label3.Caption := ‘бирюзовый 00FFFF’;
5: Label3.Caption := ‘синий 0000FF’;
6: Label3.Caption := ‘фиолетовый FF00FF’;
7: Label3.Caption := ‘желтый FFFF00’;
8: Label3.Caption := ‘коричневый 996633’;
9: Label3.Caption := ‘оранжевый FF8000’;
10: Label3.Caption := ‘лиловый 8000FF’;
11: Label3.Caption := ‘серый A0A0A0’;
end;
|
7. Жобаны сақтап, оны тексеріңіз.
6 кезең. Компоненттердің қасиеттерін өзгерту
1. Шрифт түрі мен өлшемі, экран мен әріптердің түстерін өзгертіңіз.
22. Нәтижесін оқытушыға көрсетіңіз
23. Delphiбағдарламасынан шығыңыз.
Бақылау сұрақтары
21. Берілген жобада форма компоненттері қалай орнатылады?
22. Жобада ListBoxкомпоненті қалай қолданылады?
23. Ақпаратты шығару үшін кірістірілген редактормен қалай жұмыс істеуге болады?
24. Таңдау алгоритмін жазыңыз (операторы Case).
Тілдер және бағдарламалау технологиясы
№ 10 зертханалық жұмыс
SDI (Single Document Interface) қосымшасын құру
Орындау уақыты: 2 сағат Рейтинг: 1 балл
Жұмыстың мақсаты:
Қосымшаны құрып, бір мезгілде тек қана бір құжатты қолданып және жүктеп үйрену.
SDI (Single Document Interface) термині тура сөзбен айтқанда бір-құжатты интерфейс және қосымшаны суреттейді, бір мезгілде бір құжатты немесе объектіні қолданып және жүктеп үйрену. Мысал ретінде WordPad қызмет көрсете алды, өзінің файлы OLE-объект терең мүмкіндік береді, бірақ ол SDI-қосымшасында қалады, сондықтанда бір ғана обьектімен (немесе құжатпен) WordPad жұмыс істей алады.Тағыда мысал ретінде қызмет көрсететін Delphi – көп көлемдегі тақта құралдары, мәзір, әртүрлі кітапхана компоненттері, формалар арасындағы байланыс, бірақ ол жалпы SDI-қосымшасы, сондықтанда ол бір мезгілде тек қана бір обьект қолданады және жүктеуге мүмкіндік береді.
Орындалу тәртібі:
1-кезең. Delphi жүктеу және жобаны құру
1. Delphiжүктеңіз. Delphi өздігінен SDI-қосымшасын құрады.
2. Бейнені қарайтын программаны құрыңыз.
2-кезең. Компонентерді кірістіру және олардың қасиеттерін орнату
12.Формаға Standard терезесіндегі екі тақталар TPanel1 және Panel2 кірістіріңіз және Standard терезесіндегі және Additional терезесіндегі үш экземплярлы TSpeedButton компонентін кірістіріңіз. Келесі әрәкеттерді орындаңыз:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
Form1
| Properties
| Caption
| ImageViewer
|
Name
| frmMain
|
ShowHint
| True
|
Panel1
| Properties
| Align
| alTop
|
Caption
| ‘пробел’
|
Panel2
| Properties
| Align
| alClient
|
Caption
| ‘пробел’
|
TSpeedButton1
| Properties
| Name
| spbtnLoad
|
Hint
| Load
|
Left
|
|
Top
|
|
TSpeedButton2
| Properties
| Name
| spbtnStretch
|
AllowAllUp
| True
|
GroupIndex
|
|
Hint
| Stretch
|
Left
|
|
Top
|
|
TSpeedButton3
| Properties
| Name
| spbtnCenter
|
AllowAllUp
| True
|
GroupIndex
|
|
Hint
| Center
|
Left
|
|
Top
|
|
13.Құрылған TPanel-ге Additional терезесіндегі TImage компонентін орнатыңыз және формаға Dialogs терезесіндегі TOpenDialog компонентін қосыңыз және келесі қасиеттері бойынша орындыңыз:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
Image1
| Properties
| Align
| alClient
|
Name
| imgMain
|
OpenDialog1
| Properties
| Filter
| (*.bmp)|*.bmp
|
Name
| opndlgLoad
|
Options
| Щелкните на – слева от Options и установите из списка True у свойства
[ofPathMustExist, ofEnableSizing]
|
3-кезең. TSpeedButton компоненті үшін белгі орнату
1. TSpeedButton компоненті үшін белгілер Borland\Delphi7\Demos\Football каталогте орналасқан: Келесі Glyph қасиеті бойынша кірістіріңіз:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
spbtnLoad
| Properties
| Glyph
| FLDROPEN.BMP или down.bmp
|
spbtnStretch
| Properties
| Glyph
| FONTSIZE.BMP или fwd.bmp
|
spbtnCenter
| Properties
| Glyph
| PICTURE.BMP или up.bmp
|
4-кезең. Оқиғаны өңдеу
1. Екі рет spbtnLoad компонентіне шертіңіз және терезе редакторындағы оқиғаны өңдеуші OnClickкодты енгізіңіз:
if opndlgLoad.Execute then
imgMain.Picture.LoadFromFile(opndlgLoad.FileName);
Стандартты диалогты терезе opndlgLoad.Execute әдісі арқылы файлды ашу үшін шақырады. Егер сіз файлды таңдап және ОК шертсеңіз, әдіс True қайтарады және FileName қасиеті файлдың атына тура жүктеледі. Cancel шерткенде немесе <Esc> батырмасын басқанда әдіс False қайтарады.
2. TImage компоненті Pictureқасиетін ұсынады, яғни TPicture классна экземплярлы. Бұл класс аралас бейнелердің, пиктограммалардың, метафайлдың жұмыстарын қамтамасыз етеді. Әдістердің бірі LoadFromFile, файлдың аты бойынша бейнені жүктеу арқылы қызмет көрсетеді. Қандайда бір bmp-файлды жүктеңіз.
3. Суретті ашуға талпыныңыз және компиляция үшін қосымшаны жүктеңіз, Run-Run командасын таңдаңыз немесе <F9> батырмасын басыңыз.
5-кезең. Бейнені түзету және созу
1. Бейнені созу үшін мүмкіндіктер қосыңыз.Ол үшін spbtnStretchкомпонентіне екі рет шертіңіз, Delphi терезе редакторын шығарып және автоматты түрде оқиғаны өңдеуші OnClick құрады.
2. Процедураға келесі кодты енгізіңіз:
imgMain.Stretch := spbtnStretch.Down;
3. TSpeedButtonкомпонентіDown қасиетіне ие және батырманы басқанда True тең болады. Stretchқасиетіндегі TImageкласы суретті созуға мүмкіндік береді.
4. Ортаға суретті түзету үшін процедура құрыңыз, жоғарыда айтылып кеткендей, бірақ spbtnCenter компоненті үшін келесі кодты кірістіріңіз:
imgMain.Center := spbtnCenter.Down;
5. Қосымшаны жүктеңіз және Stretch және Center батырмаларының дұрыс жұмыс атқарып тұрғанын қадағалаңыз.
6. Жұмыстың нәтижесін оқытушыға көрсетіңіз.
Бақылау сұрақтары
1. SDI нені білдіреді?
2. SDI-қосымшасына мысал келтіріңіз.
3. SDI-қосымшасы неше форманы көтере алады?
4. Сурет пиктограммасына қандай батырма жауапты?
5. Бейнені созуы үшін қандай қасиет қамсыздандырады?
6. Бейнені ортаға қою үшін қандай қасиет қамсыздандырады?
Тілдер және бағдарламау технологиясы
№ 11 зертханалық жұмыс
MDI (Multiple Document Interface) қосымшасын құру
Орындау уақыты: 2сағат Рейтинг: 1 балл
Жұмыстың мақсаты
Қосымшаны құрып, бір мезгілде бірнеше құжатты немесе объектіні қолданып және жүктеп үйрену.
MDI (Multiple Document Interface) термині тура сөзбен айтқанда көп құжатты интерфейс және қосымшаны суреттейді, бір мезгілде бірнеше құжатты немесе обьектіні қолданып және жүктеп үйрену. Мысал ретінде диспетчер файлы (File Manager) қызмет көрсете алды. Әдетте MDI-қосымшасы кем дегенде екі формадан тұрады - түпкі және тармақты. Түпкі формасына fsMDIForm тең кірістірілген. Тармақты формасына fsMDIChild стилі кірістіріледі.
Орындалу тәртібі
1-кезең. Delphi жүктеу және жобаны құру
3. Delphi жүктеңіз.
4. Ауқымды мүмкіндіктер арқылы бейнені қарауға программа құрыңыз.
2-кезең. Родительский формасын құру
14.Формаға Standard терезесіндегі TPanel екі компонентін және Additional терезесіндегі TSpeedButton компонентінің үш экземплярін бірінші панельге қойыңыз. Келесі әрекеттерді орындаңыз:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
Form1
| Properties
| Caption
| ImageViewer
|
FormStyle
| fsMDIForm
|
Name
| frmMDIParent
|
ShowHint
| True
|
Panel1
| Properties
| Align
| alTop
|
Caption
| Нажать клавишу <Space> (пробел)
|
Panel2
| Properties
| Align
| alClient
|
Caption
| Нажать клавишу <Space> (пробел)
|
TSpeedButton1
| Properties
| Name
| spbtnLoad
|
Hint
| Load
|
Left
|
|
Top
|
|
Glyph
| fldropen.bmp или down.bmp
|
TSpeedButton2
| Properties
| Name
| spbtnStretch
|
AllowAllUp
| True
|
GroupIndex
|
|
Hint
| Stretch
|
Left
|
|
Top
|
|
Glyph
| fontsize.bmp или fwd.bmp
|
TSpeedButton3
| Properties
| Name
| spbtnCenter
|
AllowAllUp
| True
|
GroupIndex
|
|
Hint
| Center
|
Left
|
|
Top
|
|
Glyph
| picture.bmp или up.bmp
|
15.Формаға TOpenDialog компонентін және келесі қасиеттері бойынша кірістіріңіз:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
OpenDialog1
| Properties
| Filter
| (*.bmp)|*.bmp
|
Name
| opndlgLoad
|
Options
| [ofPathMustExist, ofEnableSizing]
|
2-кезең. Создание дочерней формы
1. Мәзірден File – New Form таңдаңыз немесе құралдар тақтасындағы сәйкес батырманы шертіңіз. Бос форма пайда болады.
2. Келесі қасиеттерді кірістіріңіз:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
Form2
| Properties
| FormStyle
| fsMDIChild
|
Name
| frmMDIChild
|
Position
| poDefaultPosOnly
|
3. Құрылған формаға қайта TImage компонентін орналастырыңыз және келесі қасиеттерді кірістіріңіз:
Белгіленген
объект
| Вкладка окна Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
Image1
| Properties
| Align
| alClient
|
Name
| imgMain
|
4. Келесі жағдай бойынша автоматты құрылған форма тізімінен дочерный формасын өшіріңіз. Project – Options командасын таңдаңыз, Project Options диалогты терезесі пайда болады.
5. Auto-create forms тізіміндегі frmMDIChild таңдаңыз.
6. [>] батырмасына шертіңіз, frmMDIChild формасы Available forms тізіміне тасымалданады.
7. ОК батырмасын шертіңіз.
8. MDIParent сияқты Unit1, MDIChild сияқты Unit2 , pr_fam11.dpr жобаны сақтаңыз.
3-кезең. Оқиғаны өңдеу
4. Бейнені жүктеңіз. Ол үшін оқиғаны өңдеуші OnClick spbtnLoad компонентіне кодты енгізіңіз: procedure TfrmMDIParent.spbtnLoadClick(Sender: TObject);
beginCaption := opndlgLoad.FileName;
imgMain.Picture.LoadFromFile(opndlgLoad.FileName);
ClientWidth := imgMain.Picture.Width;
ClientHeight := imgMain.Picture.Height; end; end;
5. MDIChild модульде табылатын frmMDIChild типіне модуль сілтенеді, содан соң implementation жолынан тағыда бір жолuses MDIChild қосыңыз;
6. Компиляцияға жіберіп және қосымшаны жүктеңіз. Назар аударыңыз, Close батырмасына шерткен кезде дочерная формасы жабылмайды, ол пиктограммаға айналады.
7. Жобаны жабу үшін, өңдеуші OnClose кодын енгізіп, ТfrmMDIChild класын кішкентай детальдың Action қасиетін өзгерту қажет: Action := caFree;
4-кезең. Бейнені түзету және созу
7. Бейнені ортаға және созу мүмкіндіктерін енгізіңіз. Бұл үшін оқиғаны өңдеуші OnClick TSpeedButton Stretch және Center компонентерін келесі түрде енгізіңіз:
if not (ActiveMDIChild = Nil) then
if ActiveMDIChild is ТfrmMDIChild then
ТfrmMDIChild(ActiveMDIChild).imgMain.Stretch := spbtnStretch.Down;
и if not (ActiveMDIChild = Nil) then
if ActiveMDIChild is ТfrmMDIChild then
ТfrmMDIChild(ActiveMDIChild).imgMain.Center := spbtnCenter.Down;
8. Барлық тармақты формаға Stretch және Center батырмалары бірдей болмас үшін, оқиға өңдеушісіне жолдар класын енгізіңіз.
frmMDIParent.spbtnStretch.Down := imgMain.Stretch;
frmMDIParent.spbtnCenter.Down := imgMain.Center;
9. MDIChild модуліне implementation жолынан соң жолға uses MDIParent енгізіңіз;
10. Қосымшаны жүктеңіз және орындалу дұрыстығын тексеріңіз.
Ескерту: Жаңа мағыналы қасиетке ие болған Down, OnClick оқиғасы TSpeedButton класын шақырады. Оқиғаның өңдеушісіне кодты жазған кезде абай болыңыз, ол жаңа оқиғаны басқару жолымен мағыналы қасиетке ие, сонымен қатар шексіз рекурсияны құруға болады.
1. Жұмыстың нәтижесін оқытушыға көрсетіңіз.
Бақылау сұрақтары
7. MDI не білдіреді?
8. MDI-қосымшасына мысал келтіріңіз.
9. Автоматтық және динамикалық форманың құрылуын суретте.
Тілдер және бағдарламалау технологиясы
№ 12 зертханалық жұмыс
Қолданбалы интерфейсінің құрылысы
Орындау уақыты: 2 сағат Рейтинг: 1 балл
Жұмыстың мақсаты:
Әртүрлі тәсілдерді үйреніп қолдану және қолданбалы интерфейсінің көмегі бойынша өзгертуге болады.
Delphi позволяет легко манипулировать свойствами компонент как в режиме проектирования (design time), так и в режиме выполнения программы (run time). В режиме проектирования манипулирование свойствами осуществляется с помощью Проектировщика форм или с помощью вкладки Properties Инспектора объектов. В режиме выполнения программист имеет возможность не только манипулировать всеми свойствами, отображаемыми в Инспекторе объектов, но и управлять более обширным их списком.
Орындалу тәртібі:
1-кезең. Delphi жүктеу және жобаны құру
5. Delphiжүктеңіз.
6. Орындау барысында өлшемін, түсін және сыртқы келбетін TShape объектісі және өлшемі, түсі форманың өзіне мүмкіндік беретін программа құрыңыз.
2-кезең. Компоненттерді қою және құрылысының қасиеттері
16.Формаға Shape объектісін, CombоBox тізіміне түсетін ColorDialog компонентін, ScrollBar айналымының екі жолағын және Button батырмасының үшеуін орналастырыңыз. Келесі әрәкеттерді орындаңыз:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
Button1
| Properties
| Name
| FormColor
|
Caption
| Цвет формы
|
Events
| OnClick
| if ColorDialog1.Execute then
Form1.Color := ColorDialog1.Color;
|
Button2
| Properties
| Name
| ShapeColor
|
Caption
| Цвет фигуры
|
Events
| OnClick
| if ColorDialog1.Execute then
Shape1.Brush.Color := ColorDialog1.Color;
|
Button3
| Properties
| Caption
| Выход
|
Events
| OnClick
| Close
|
ScrollBar1
| Properties
| Kind
| sbHorizontal
|
Events
| OnChange
| Shape1.Width := ScrollBar1.Position * 3;
|
ScrollBar2
| Properties
| Kind
| sbVertical
|
Events
| OnChange
| Shape1.Height := ScrollBar2.Position * 2;
|
ComboBox1
| Properties
| Text
| Тексттін орнына бос орын қойыңыз
|
| Items
| Бөлек жолға әр фигураға атын теріңіз:
прямоугольник
квадрат
закругленный прямоугольник
закругленный квадрат
эллипс
круг
|
Events
| OnClick
| Shape1.Shape :=
TShapeType (ComboBox1.ItemIndex);
|
17.Shape объектісін созыңыз, жалпы тақырып және фигураны таңдау үшін шақыртуды енгізіңіз.
18.Құрылған қосымшаны орындауға жіберіңіз. Форманың өлшемдерін өзгертіңіз. Нәтижесін оқытушыға көрсетіңіз.
3-кезең. Модификация қосымшасы. Main Menu компонентімен жұмыс
9. Создайте модификацию проекта: уберите кнопки и выпадающий список, заменив их на MainMenu, «заставьте» полосы прокрутки изменять свое положение в зависимости от размера окна, а их свойство Position изменяться так, чтобы правильно отражать размер формы (лучше создать новый проект).
10. Разместите на форме объект Shape, компонент MainMenu, компонент ColorDialog, две полосы прокрутки ScrollBar. Дважды щелкните на компоненте MainMenu и в появившемся окне редактора меню, введите названия пунктов меню: три главных пункта Цвета, Фигуры, Выход; для первого пункта создайте два подпункта Цвет фигуры и Цвет окна; для второго 6 подпунктов Прямоугольник, Квадрат, Закругленный прямоугольник, Закругленный квадрат, Эллипс, Окружность; третий пункт меню не будет содержать никаких подпунктов.
11. Назначьте 0 свойству Tag пункта Прямоугольник, 1- пункту Квадрат и т.д., настройте события в случае выбора пунктов выбора фигуры:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
Прямоугольник
| Events
| OnClick
| Shape1.Shape := TShapeType((Sender as TMenuItem).Tag;
|
Обработка события OnClick для других фигур аналогична обработке события для прямоугольника.
12. Методы для подпунктов изменения цвета аналогичны тем, которые были на этапе 2.
13. Теперь «заставьте» полосы прокрутки всегда располагаться возле границ окна, независимо от его размеров. Для этого выполните следующие действия:
Белгіленген
объект
| Object Inspector
| Қасиеттің және оқиғаның аты
| Орындалатын амалдар
|
Form1
| Events
| OnResize
| 1. Добавьте раздел описания переменных:
var Menu, Caption, Frame : integer;
2. Тело процедуры:
Caption := GetSystemMetrics(sm_cyCaption);
Frame := GetSystemMetrics(sm_cxFrame)*2;
Menu := GetSystemMetrics(sm_cyMenu);
ScrollBar1.Max := Width;
ScrollBar2.Max := Height;
ScrollBar2.Left := Width - Frame - ScrollBar2.Width;
ScrollBar2.Height := Height - Frame - Caption - Menu;
ScrollBar1.Top := Height - ScrollBar2.Width - Frame - Caption - Menu;
ScrollBar1.Width := Width - ScrollBar2.Width - Frame;
|
6. Қосымшаны жүктеңіз. Жұмыстың дұрыстығын тексеріңіз.
7. Жұмыстың нәтижесін оқытушыға көрсетіңіз.
Бақылау сұрақтары
10. Перечислите типы свойств. Приведите примеры разных типов в Инспекторе объектов.
11. Объектінің қасиеттері қалай өзгереді?
12. MainMenu компоненті қалай настраивается?
Тілдер және бағдарламалау технологиясы
№ 13 зертханалық жұмыс
Анимация және графиктерді көрсететін компоненттермен жұмыс
Орындау уақыты: 2 сағат Рейтинг: 1 балл
Жұмыстың мақсаты:
Жұмысты қамтамасыз етуші анимация және графика компоненттер үшін оқиғаны өңдеушіні құрып және оларды қойып үйрену.
Орындалу тәртібі:
1-кезең. Delphi бағдарламасын жүктеу және жобаны құру
7. Delphiбағдарламасын жүктеңіз.
8. Терезе тақырыбына «Компоненты для отображения графики и анимации» деп беріңіз.
2-кезең. Көпбетті блокнотпен TPageControl жұмыс
1. Көпбетті блокнотты құруды қамтамасыз ететін палитрада екі басқару элемент компоненттері бар. Бұлар TTabControl және TpageControl компоненттері.
Формаға TPageControl компонентін (панель Win32) орнатыңыз, Align қасиетінен AlClient белгісін беріңіздер.
2. Компонент TPageControl компоненті бірін-бірі жасыратын бірнеше тақталар TTabSheet класында болуы мүмкін. Әрбір тақташа өзімен байланысты закладкасын таңдайды және компоненттерге орналастырылған өзінің терімдері болуы мүмкін.
3. Құрылушы кезеңіне жаңа тақта қосу үшін, тышқанның оң жақ батырмасын компонентке шертіп және New Page таңдаңыз.
3-кезең.TPaintBox компонентімен жұмыс
1. Жаңа беттің тақырыпшасын орнату үшін Caption қасиетін қолданыңыз. Бірінші бет үшін тақырыбын - TPaintBox орнатыңыз.
2. Панельге TBitBtn (Additional панелінен)батырмасын орнатыңыз. Buttons немесе Demos\Doc\Graphex каталогынан Pencil.bmp пиктограммасын батырмаға (Glyph қасиеті) суреттеңіз.Тақырып батырмасына– Нарисовать.
3. Панельге тағыда бір TBitBtn батырмасын орналастырыңыз. Buttons каталогынан Clear.bmp пиктограммасын батырмаға суреттеңіз.Тақырып батырмасына – Стереть.
4. Формаға TPaintBox (System панелінен) компонентін орналастырыңыз. Align қасиетінен AlClient мағынасын беріңіз.
4. TPaintBox компоненті– өз бетімен бейнелеулердің сурет салуына арналған терезе. Канва қасиетінің құрамында Canvas компоненті бар, графикалық құралдар –Font қасиетінде Pen және Brush. Канва бойынша қызыл түсті эллипсті суреттелетін, Нарисовать батырмасы үшін оқиға өңдеушісін құрыңыз. Эллипсте Delphi жазуы міндеті түрде болу керек.
5. Өңдеушіге бүтін түрдегі екі өзгерткішті суреттеңіз: var x, y : integer;
6. Қызыл түске бояу үшін міндетті түрде келесі оператор жазыңыз: PaintBox1.Canvas.Brush.Color := clRed; Барлық қасиеттер және суреттеу әдісі Canvas қасиетіндегі TPaintBox компонентіне жатады. Операторды қысқарту үшін алдыңғы оператордың орнына қосылу операторына жазыңыз: With PaintBox1.Canvas Do
7. Түсті беретін қаламға операторлар жақшаларды ашып және операторды жазыңыз:
beginBrush.Color := clRed;
8. Канва геометриялық фигураларды суреттейтін әдістерін құрайды. Контейнердің барлық аймағын алатын эллипсті салыңыз. Операторды енгізіңіз
Ellipse(0,0,Width,Height);
9. Font : TFont қасиеті канваның шрифтін анықтайды. Шрифттің биіктігін анықтаңыз және операторды енгізіңіз.
Font.Size := Height div 5;
10. Шрифттің түсін беріңіз:
Font.Color := clWhite;
11. TPaintBox компонентіне шыққан мәтінді нүктенің координатын анықтаңыз. Операторды енгізіңіз:
x := (Width – TextWidth (‘Delphi’)) div 2;
y := (Height – TextHeight(‘D’)) div 2;
12. TextOut әдісі(x, y : integer; const Text: string); үшбұрыштың сол жақ үстінгі жағында (x, y) нүктесінде орналасқан мәтінді қамтитын мәтіндік жолды Text енгізіңіз. Енгізіңіз
TextOut(x, y, ‘Delphi’);
end;
13. Форма терезесіне ауысып, BitBtn2 батырмасы үшін оқиғаны өңдеуші OnClick құрыңыз. Өңдеуші суреттеу үшін контейнерді тазалауға арналған. Refresh әдісін қолдана отырып, бейнені қайта салуына тура келеді, яғни өткен жағдайдағы компонент қайта қалпына келеді. Операторды енгізіңіз PaintBox1.Refresh;
14. Қосымшаны орындауға жіберіңіз. Нарисовать батырмасын, содан соң Стереть басыңыз.
4-кезең. TAnimate компонентімен жұмыс
1. Canvas қасиеті көп компоненттеріне ие, соның ішінде формада. На канва компонентіне геометриялық фигураларды, мәтінді салуға болады және бөлек нүктелерден әр түрлі оюларды және растрлық бейнелерді суреттеулерді құрастыруға болады.
Көпбетті блкнотты New Page командасымен закладка құру үшін контексттік мәзірден TPageControl (закладкаға шертіңіз) компонентін алыңыз.
2. Беттің тақырыбына TAnimate белгісіне енгізіңіз.
3. TAnimate (панель Win32) компоненті AVI форматтағы бейнеклиптерді ойнатады. TAnimate компонентін блокноттың екінші бетіне апарыңыз.
4. FileName қасиеті AVI-файлды компонентімен байланыстырады. Стандартты анимацияны қолдану үшін мүмкіндік беретін CommonAVI қасиеті констант тізімінен тұрады. CommonAVI компонент қасиетінен AVIDeleteFile белгісін таңдаңыз.
5. TProgressBar (панель Win32) компоненті бейнелерді ұзақ уақыт бойына жүретін процесті үшін арналған. Формаға компонентті орнатыңыз және оның Visible қасиетінен False белгісіне орнатыңыз.
6. TTimer (панель System) компоненті нақтылы уақыт ішінде аралықтарды санап шығуына арналған. Формаға компоненті апарыңыз және Enabled қасиетінен False қасиетін орнатыңыз.
7. Оның Interval қасиеті миллисекундтағы уақыт аралығын,яғни таймердің қосылуынан бастап енуіне дейінгі OnTimer оқиғасы өтуі қажет. Interval қасиетін 100 тең етіп орнатыңыз.
8. Форманың ортасына стандартты Нажмите батырмасын орнатыңыз және оған OnClick өңдеушіні құрыңыз.
9. Операторды енгізіңіз:
Для запуска видеоклипа Animate1.Active := True;
Для получения изображения компонента ProgressBar1 ProgressBar1.Show;
Для включения таймера Timer1.Enabled := True;
10. Enabled қасиетінен True белгісі орнаған кезде Таймер қосылады. Enabled қасиеті False белгісі болмайынша, қосылған таймер бүкіл уақыт бойы OnTimer оқиғасын шақыра береді. Timer1 компонентіне өңдеуші оқиға OnTimer орнатыңыз. Компонентті ерекшелеп алыңыз және Events вкладкасынан OnTimer жолына екі рет шертіңіз.
11. Position қасиетінен TProgressBar компоненті бейненің ауқымдық белгісінен тұрады.
Оператор енгізіңіз ProgressBar1.Position := ProgressBar1.Position + 1;
12. Position қасиеті максиалды ауқымына жеткенде бейнеклип жұмысы тоқтауы тиіс.
Операторды енгізіңіз:
if ProgressBar1.Position >= ProgressBar1.Max then
beginTimer1.Enabled := False;
ProgressBar1.Hide;
Animate1.Stop;
end;
13. Қосымшаны жүктеңіз. Батырмаға басыңыз. TAnimate компонент жұмысына назар аударыңыз және бағдарламаны аяқтаңыз.
5-кезең.TMediaPlayer компонентімен жұмыс
1. Көпбетті блкнотты New Page командасымен закладка құру үшін контексттік мәзірден TPageControl (закладкаға шертіңіз) компонентін алыңыз. Беттің тақырыбына TmediaPlayer белгісіне енгізіңіз.
2. TMediaPlayer компоненті өзімен бірге батырмалар терімдері әр түрлі мультимедиялық құрылғыларды басқару үшін арналған. Блокноттың үшінші бетіне TMediaPlayer компонентін орнатыңыз.
3. Бұл компонент мультимедиялық құрылғылармен басқаруға мүмкіндік береді. DeviceType қасиеті басқару үшін құрылғының түрін анықтайды. Бұл қасиеттің тізім белгілерін ашыңыз, мазмұнымен танысыңыз және dtAutoSelect (түрін автоматты түрде анықтайды)белгісін орнатыңыз.
4. TListBox компонентін формаға орнатыңыз. Оның Items қасиетіне белгілерін енгізіңіз: Ding, Chord, Ctmelogy, Chimes.
5. Бұл аттар стандартты дауысты Windows файылдары. MediaPlayer1 көмегімен дәл осы сөздер тыңдалынады. MediaPlayer1 компоненті үшін OnClick өңдеуші оқиғасын құрыңыз.
6. Тізім бойынша тыңдалатын файлы ат бойынша анықталады. Егер тізімнен бір элемент таңдалмаса, онда ойнатқыш жұмыс жасамайды.
Операторды енгізіңіз if ListBox1.ItemIndex <0 then Exit;
7. Стандартты дауысты файлдар ауқымды wav болады. Файл атын анықтаңыз
MediaPlayer1.FileName := ListBox1.Items[ListBox1.ItemIndex]+’.wav’;
8. Назар аударыңыз, процедура тақырыбынан анықтауға болатын және қай компоненттен қандай батырма басылған туралы Button параметрі орналасқан. Әрбір батырмада өзінің аты орналасқан. btPlay – іске қосылатын батырмасы. Теріңіз
if Button = btPlay then beginMediaPlayer1.Open; MediaPlayer1.Play; end;
9. Open файл әдісі үшін воспроизведения ашылады, ал Play әдісі воспроизведение wav-файлын белсенді етеді. Пауза және Стоп батырмалары үшін де ұқсас операторлар сияқты қолдануға болады. Енгізіңіз
if Button = bt Pause then MediaPlayer1.Pause; if Button = btStop then MediaPlayer1.Stop;
10. Бағдарламаны орындауға жіберіңіз. Бірінші файлдағы тізімді тышқанмен ерекшелеп және Play батырмасына басыңыз.Қосымшаны жабыңыз.
6-кезең.TShape компонентімен жұмыс
1. Көпбетті блкнотты New Page командасымен закладка құру үшін контексттік мәзірден TPageControl (закладкаға шертіңіз) компонентін алыңыз. Беттің тақырыбына Tshape белгісіне енгізіңіз.
2. TShape (панель Additional) компоненті жай ғана фигураларды салады. Tshape компонентін жаңа бетке орналастырыңыз.
3. TUpDown (панель Win32) компонентін жаңа бетке орналастырыңыз.
4. Бұл компонент сандық ауқымды бақылау үшін арналған. Max қасиетінен максимальды белгісі орнатылады. Бұл белгісін 5 тең етіп орналастырыңыз.
5. UpDown компонентіне шерткен кезде OnClick оқиғасы пайда болады. OnClick ( UpDown компонентіне екі рет шерту арқылы болады) өңдеуші оқиғасын құрыңыз.
6. Shape қасиеті фигураның түрін анықтайды. Ол константамен беріледі. Position қасиетінен байланысты UpDown1 компоненті Shape1 компонентінде фигураның түрін өзгертеді. Операторды енгізіңіз:
case UpDown1.Position of
0: Shape1.Shape := stRectangle;
1: Shape1.Shape := stSquare;
2: Shape1.Shape := stRoundRect;
3: Shape1.Shape := stRoundSquare;
4: Shape1.Shape := stEllipse;
5: Shape1.Shape := stCircle;
end;
7. Бағдарламаны орындаңыз. TShape компонентінен геометриялық фигураны өзгертіңіз – бес рет батырма басқармасына шертіңіз.
8. Бірінші бетке оралыңыз. Суретті қойыңыз. Екінші бетке оралыңыз. Бейнеклипті қосыңыз. Үшінші бетке көшіңіз.Дауысты қосыңыз. Бағдарламаны аяқтаңыз.
9. Жұмыстың нәтижесін оқытушыға көрсетіңіз.
10. Delphi жабыңыз.
11. Бақылау сұрақтары
1. Графикалық бейнелерді және анимацияларды құру үшін компонентті атаңыз.
2. Қандай қасиет қалып қойған: PaintBox1.xxxxxx.Pen := clRed;
3. Бейнелеу үшін қайта салу әдісін атаңыз.
4. Компоненттердің мінездемелерін беріңіздер TPageControl, TPaintBox, TAnimate, TProgressBar, TTimer, TMediaPlayer, TShape.
Тілдер және бағдарламалау технологиясы
№ 14 зертханалық жұмыс
Графиктерді бейнелеу және анимациялау үшін компоненттерімен жұмыс
Орындау уақыты: 2 сағат Рейтинг: 1 балл
Жұмыстың мақсаты:
Мәлімет жүйесінен құжат файлын құруды үйрену
Орындалу тәртібі:
1-кезең. Delphi жүктеу және жобаны құру
9. Delphiжүктеңіз.
10. Алдыңғы зертханалық жұмыста құрылған жобаны ашыңыз.
11. Delphi терезесін ораңыз.
2-кезең. Мәлімет жүйесінен құжат файлын құру
15. Келесі әркетті орындаңыз: Пуск – Бағдарламалар – Microsoft Word.
16. Word құжатына келесі мәтіндерді енгізіңіз:
Содержание
TPageControl
TAnimate
TMediaPlayer
17. Мазмұны – мәліметтер тақырып бөлімі. Жирным шрифтпен оны ерекшелеңіз.
18. Тақырыптың алдына курсорды орнатыңыз.Тақырып бөлімінде қажетті сілтемеге мәліметті белгілеу. Мәзірде Вставка батырмасындағы сілтеу командасын орындыңыз.Сұхбатты терезеде Сілтеу тобында Вставить сілтемені орнатып қосқышты Обычный әдетінде, ал Нумерация тобында Другой әдетіне орнатыңыз. Сілтеменің нөмер аймағына # символын енгізіңіз және ОК басыңыз. (Microsoft Word 2002 үшін Вставка – Ссылка – Сноска – Внизу страницы- Формат другой #).
19. Терезенің төменгі бөлігіндегі сілтемеге идентификатор бөлімін жазу керек. Идентификатор бөлімдерінің негізінде префикстен IDH_ басталу керек, өйткені контекстік бөліміндегі F1 батырмасын шақыруға мүмкіндік береді. Идентификаторды IDH_001 жазып қойыңыз.
20. Әрбір бөлімдегі мәтін мәліметі бөлек құжаттар беттерінде болу қажет. Соңғы мәлімет бөліміндегі бетті бөліңіз (Ctrl + Enter).
21. Мәтінді келесі бөлімге жазыңыз:
TPageControl
TPageControl компонентінде TTabSheet классында бірін-бірі жасыратын бірнеше тақталар болу мүмкін. Әрбір тақтамен закладкамен байланысты болады және компоненттердің оған орналастырылған өз терім асырай алады.
Жирный шрифтпен тақырыпты белгілеп ерекшелеңіз.
22. Курсорды тақырыптың алдына орнатыңыз. Мәзірдегі Вставкадан Сілтеу командасын орындаңыз. Обычный қалпын, ал Нумерация тобына Другая қалпын қайта қосқышты орнатыңыз. # символын және OK батырмасын сілтеменің беттік нөмеріне енгізіңіз. Идентификатор бөліміндегіні IDH_002 жазып қойыңыз.
23. Соңғы мәлімет бөліміндегі бетті бөліңіз (Ctrl + Enter).
24. Мәтінді келесі бөлімге жазыңыз: