
- •Қосымшаларды өңдеу интегралданған ортасымен танысу.
- •Жұмыстың мақсаты
- •Жұмыстың орындалу тәртібі
- •1 Кезең. Delphi бағдарламасын жүктеу
- •2Кезең. Интегралданған ортаны оқып үйрену
- •3 Кезең. Жоба мен модуль файлын құру және сақтау.
- •4 Кезең. Компоненттерді қосымшаға кірістіру
- •5 Кезең. Формада компоненттерді редакциялау.
- •6 Кезең. Қасиеттердегі мәндерді өзгерту
- •7 Кезең. Іс әрекетті орындаушысын анықтау
- •Оқиғаларды өңдеу
- •Жұмыс мақсаты:
- •Жұмыстың орындалу тәртібі:
- •1 Кезең. Delphi бағдарламасын жүктеу
- •Delphi бағдарламасын жүктеңіз.
- •2 Кезең. Қосымшаға компоненттерді қою
- •3 Этап. Оқиғаларды өңдеу процедурасын құру
- •4 Кезең. Жаңа жобаны құру
- •«Сұхбат» атты жобаны құру
- •1 Кезең. Delphi бағдарламасын жүктеу және жоба құру
- •2 Кезең. Қосымшаға компонеттерді орналастыру
- •3 Кезең. Компонеттер қасиеттерән Редакциялаужәне оқиғаны өңдеуші процодурасын құру.
- •4 Кезең. Бағдарламаны сақтау және іске қосу
- •5 Кезең. Компоненттер қасиеттерін өзгерту
- •«Анықтама» атты жобасын құру
- •1 Кезең. Delphi бағдарламасын жүктеу және жобаны құру
- •2 Кезең. Формаға компоненттерді енгізу
- •3Кезең. Компоненттердің қасиеттеріне түзетулерді енгізу және оқиғаларды өңдеу процедурасын құру
- •4Кезең.Бағдарламаны сақтау және іске қосу
- •5Кезең. ListBox1 компонентімен жұмыс жасау
- •6 Кезең. Компоненттердің қасиеттерін өзгерту
- •Sdi (Single Document Interface) қосымшасын құру Орындау уақыты: 2 сағат Рейтинг: 1 балл
- •Mdi (Multiple Document Interface) қосымшасын құру Орындау уақыты: 2сағат Рейтинг: 1 балл
- •Қолданбалы интерфейсінің құрылысы Орындау уақыты: 2 сағат Рейтинг: 1 балл
- •Анимация және графиктерді көрсететін компоненттермен жұмыс Орындау уақыты: 2 сағат Рейтинг: 1 балл
- •Delphi бағдарламасын жүктеңіз.
- •Delphi жабыңыз.
- •Бақылау сұрақтары
- •Графиктерді бейнелеу және анимациялау үшін компоненттерімен жұмыс Орындау уақыты: 2 сағат Рейтинг: 1 балл
- •Деректер қорымен жұмыс Орындау уақыты: 4 сағат Рейтинг: 2 балла
- •"Топ тізімі" атты кестесі
- •Деректер базасындағы навигация Орындау уақыты: 2 сағат Рейтинг: 1 балл
- •Sql тілі. TQuery компоненті Орындау уақыты: 2 сағат Рейтинг: 1 балл
- •Тілдер және бағдарламалау технологиясы
- •Бақылау сұрақтары
Mdi (Multiple Document Interface) қосымшасын құру Орындау уақыты: 2сағат Рейтинг: 1 балл
Жұмыстың мақсаты
Қосымшаны құрып, бір мезгілде бірнеше құжатты немесе объектіні қолданып және жүктеп үйрену.
MDI (Multiple Document Interface) термині тура сөзбен айтқанда көп құжатты интерфейс және қосымшаны суреттейді, бір мезгілде бірнеше құжатты немесе обьектіні қолданып және жүктеп үйрену. Мысал ретінде диспетчер файлы (File Manager) қызмет көрсете алды. Әдетте MDI-қосымшасы кем дегенде екі формадан тұрады - түпкі және тармақты. Түпкі формасына fsMDIForm тең кірістірілген. Тармақты формасына fsMDIChild стилі кірістіріледі.
Орындалу тәртібі
1-кезең. Delphi жүктеу және жобаны құру
Delphi жүктеңіз.
Ауқымды мүмкіндіктер арқылы бейнені қарауға программа құрыңыз.
2-кезең. Родительский формасын құру
Формаға 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
8
Top
8
Glyph
fldropen.bmp или down.bmp
TSpeedButton2
Properties
Name
spbtnStretch
AllowAllUp
True
GroupIndex
1
Hint
Stretch
Left
48
Top
8
Glyph
fontsize.bmp или fwd.bmp
TSpeedButton3
Properties
Name
spbtnCenter
AllowAllUp
True
GroupIndex
2
Hint
Center
Left
80
Top
8
Glyph
picture.bmp или up.bmp
Формаға TOpenDialog компонентін және келесі қасиеттері бойынша кірістіріңіз:
Белгіленген объект |
Object Inspector |
Қасиеттің және оқиғаның аты |
Орындалатын амалдар |
OpenDialog1
|
Properties
|
Filter |
(*.bmp)|*.bmp |
Name |
opndlgLoad |
||
Options |
[ofPathMustExist, ofEnableSizing] |
2-кезең. Создание дочерней формы
Мәзірден File – New Form таңдаңыз немесе құралдар тақтасындағы сәйкес батырманы шертіңіз. Бос форма пайда болады.
Келесі қасиеттерді кірістіріңіз:
Белгіленген
объект
Object Inspector
Қасиеттің және оқиғаның аты
Орындалатын амалдар
Form2
Properties
FormStyle
fsMDIChild
Name
frmMDIChild
Position
poDefaultPosOnly
Құрылған формаға қайта TImage компонентін орналастырыңыз және келесі қасиеттерді кірістіріңіз:
Белгіленген
объект
Вкладка окна Object Inspector
Қасиеттің және оқиғаның аты
Орындалатын амалдар
Image1
Properties
Align
alClient
Name
imgMain
Келесі жағдай бойынша автоматты құрылған форма тізімінен дочерный формасын өшіріңіз. Project – Options командасын таңдаңыз, Project Options диалогты терезесі пайда болады.
Auto-create forms тізіміндегі frmMDIChild таңдаңыз.
[>] батырмасына шертіңіз, frmMDIChild формасы Available forms тізіміне тасымалданады.
ОК батырмасын шертіңіз.
MDIParent сияқты Unit1, MDIChild сияқты Unit2 , pr_fam11.dpr жобаны сақтаңыз.
3-кезең. Оқиғаны өңдеу
Бейнені жүктеңіз. Ол үшін оқиғаны өңдеуші OnClick spbtnLoad компонентіне кодты енгізіңіз: procedure TfrmMDIParent.spbtnLoadClick(Sender: TObject);
begin Caption := opndlgLoad.FileName;
imgMain.Picture.LoadFromFile(opndlgLoad.FileName);
ClientWidth := imgMain.Picture.Width;
ClientHeight := imgMain.Picture.Height; end; end;
MDIChild модульде табылатын frmMDIChild типіне модуль сілтенеді, содан соң implementation жолынан тағыда бір жол uses MDIChild қосыңыз;
Компиляцияға жіберіп және қосымшаны жүктеңіз. Назар аударыңыз, Close батырмасына шерткен кезде дочерная формасы жабылмайды, ол пиктограммаға айналады.
Жобаны жабу үшін, өңдеуші OnClose кодын енгізіп, ТfrmMDIChild класын кішкентай детальдың Action қасиетін өзгерту қажет: Action := caFree;
4-кезең. Бейнені түзету және созу
Бейнені ортаға және созу мүмкіндіктерін енгізіңіз. Бұл үшін оқиғаны өңдеуші 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;
Барлық тармақты формаға Stretch және Center батырмалары бірдей болмас үшін, оқиға өңдеушісіне жолдар класын енгізіңіз.
frmMDIParent.spbtnStretch.Down := imgMain.Stretch;
frmMDIParent.spbtnCenter.Down := imgMain.Center;
MDIChild модуліне implementation жолынан соң жолға uses MDIParent енгізіңіз;
Қосымшаны жүктеңіз және орындалу дұрыстығын тексеріңіз.
Ескерту: Жаңа мағыналы қасиетке ие болған Down, OnClick оқиғасы TSpeedButton класын шақырады. Оқиғаның өңдеушісіне кодты жазған кезде абай болыңыз, ол жаңа оқиғаны басқару жолымен мағыналы қасиетке ие, сонымен қатар шексіз рекурсияны құруға болады.
Жұмыстың нәтижесін оқытушыға көрсетіңіз.
Бақылау сұрақтары
MDI не білдіреді?
MDI-қосымшасына мысал келтіріңіз.
Автоматтық және динамикалық форманың құрылуын суретте.
Тілдер және бағдарламалау технологиясы
№ 12 зертханалық жұмыс