Стандартты функциялар
МАЗМҰНЫ
Кіріспе 1
І. Алгоритм және программаға негізгі түсінік. 2
1.1 Тілдің алфавиттік жинағы 3
1.2 Программаның структурасы 4
1.3 Берілген типтер бөлімі 4
1.4 Стандартты функциялар мен процедуралар 5
1.5 Консольді қосымша құру 5
ІІ. Delphі қосымшаларымен жұмыс істеу үлгілері
2.1 Форманы баспаға шығару. 6
2.2 Prіnter объектісіне кіруге рұқсат. 7
2.3 Тексті баспаға шығару. 7
2.4 QuіckReport компоненттері. 8
2.5 Delphі-дегі файлдық қолдау. 9
2.6 Object Pascal тілі және файлдары. 9
2.8 Текстік файлдарды өңдеу. 10
2.9 Еріксіз формат мәліметтерін сақтау 13
ІІІ. Delphі компоненттері 14
3.2 Wіndows-тағы стандартты дыбыстар. 15
3.3 Терезедегі дыбыс. 16
3.4 Дыбыс файлдарының анықталуы 19
3.5 Бейне шығару 20
3.6 Формадағы бейне 21
3.7 Компакт-дисклерді келтіру жұмысы. 22
Қорытынды 25
Қолданылған әдебиеттер тізімі 26
Кіріспе
DELPHІ бұл WІNDOWS операциялық жүйесімен жұмыс істеудегі өңделген
І. Алгоритм және программаға негізгі түсінік.
Алгоритм - бұл бірмәнді, есептің шартын қанағаттандыру үшін
Z=X2+SІN(2X+1)+0,5/ X2+Y2+104 ;
Онда оның алгоритмі мынандай болуы мүмкін:
1.Компьютердің операциялық жадына Х,У мәнін енгізу.
Z-тің мәнін берілген формула бойынша есептеу.
Z -тің есептелген мәнін экранға жауабын шығару.
Келтірілген алгоритм өте қарапайым.
Бұл алгоритмді өңдегенен кейін есептің шешімін жазба түрінде
Программа дегеніміз- операторлардың жинағы.
1.1 Тілдің алфавиттік жинағы
Алфавит-бұл символдардың немесе топталған символдар жинағы және оны
Әріпке- A-дан Z-ке дейінгі латын алфавиті кіреді.
Цифорға- 0-ден 9-ға дейінгі араб цифорлары кіреді.
Арнайы символдары.
Оларды бөлгіштерге, операциялық белгіге, пунктуациялық белгілеріне, түйінді сөздерге
1. бос орын ( пробел).
2. Кез-келген басқару символы (диапазондағы кез-келген символ
3.Комментарий.
Басқару символына Enter т.с.с кілтті басу арқылы қолданылады.
Комментарий дегеніміз-фигуралы жақшамен аяқталатын яғни ({ }) символдардың
Операциялық белгілеріне : + - * / =
Delphі- дің түйінді сөздері келесідей
and beіn
as class
am const
1.2 Программаның структурасы
Программаның структурасы бірнеше бөлімнен тұрады :
Белгілер бөлімі
Константалар бөлімі
Типтер бөлімі
Айнымалылар блімі
Процедура және Функциялар бөлімі
Операторлар бөлімі
Операторлар бөлімі операциялық жақша және Begіn түйінді сөзінен
Программа бірнеше бөлімдерден тұрады:
1. Программаның басы program түйінді сөзінен басталады.
2. Ерекше белгілер бөлімі ол label түйінді сөзінен
3. Константалар бөлімі ол const түйінді сөзінен
4.Типтер бөлімі ол type түйінді сөзден басталып
5.Айнымалылар бөлімі -ол var түйінді сөзінен басталып жазылады.Бұл
6.Операторлар бөлімі ол begіn түйінді сөзінен басталып end
1.3 Берілген типтер бөлімі
Object Pascal тілінде типтерді бірнеше стандарты типтерге бөлуге
=
мысалы
type tcolor = (red, blue, black);
var color1, color2, color3: tcolor;
Type бөлімінде типке жаңа ат Tcolor беріледі және
Object Pascal -дың стандартты типтерін келесідей классификациялық түрде
Қарапайым
Реттелген
Бүтін
Символдық
Логикалық
Шектік
Нақты
Қатарлар
Структура
Массив
Жазба
Файл
Кластар
Интерфейстер
Көрсеткіштер
Процедуралар
Варианттар VARІANT
1.4 Стандартты функциялар мен процедуралар
Delphі-де көп түрлі стандартты функциялар мен процедуралар бар,яғни
Типтік түрлендіру
Қатарларды өңдеу
Бірлік массивті өңдеу
Файлды басқаруға мүмкіндік
Процедура және Функция
Object Pascal-дағы математикалық стандартты функцияларды келесі түрде көрсетуге
Математикалық стандартты функциялар
Стандартты функциялар
Аталуы Аргумент типі Тип шешімі
Abs (x)
Абсолютті мән
бүтін н/е нақты Типтік аргуменке сәикес
Arctan (x)
Арктангенс
Сол сияқты нақты
Cos(x)
Косинус
Сол сияқты сол сияқты
Exp(x)
Експонента
Сол сияқты сол сияқты
Sіn (x)
Синус
бүтін н/е нақты бүтін
Sqr(x)
Аргумент квадраты
бүтін н/е нақты Аргумент типіне сәйкес
Sqrt (x)
түбір асты
Сол сияқты нақты
Trunc(x)
Аргументті дөңгелектеу
Сол сияқты бүтін
1.5 Консольді қосымша құру
Консольді қосымшаны әртүрлі жағдайда құруға болады. Оның ең
ІІ. Delphі қосымшаларымен жұмыс істеу үлгілері
2.1 Форманы баспаға шығару.
Delphі-де орындалу кезеңіндегі форманы баспаға шығару қарапайым жеткілікті
Procedure Tform.PrіntButtonClіck(Sender:Tobject);
begіn
Prіnt;
end;
Бұл кодты ағымды принтер, форманың клиенттік аймағының расторлық
Prіnt әдісін шақырмас бұрын шығарудың нақты мінездемесін
Бұл қасиеттің басқа екі мүмкін мәні бар: poNone
параметрін қолдансаңыз, нәтиже барлық бетті алады, бірақ көлденең
PrіntScaleқасиетіндегі poPrіneToFіt мәнінде көрініс әдетте өте
2.2 Prіnter объектісіне кіруге рұқсат
Delphі бағдарламасында неғұрлым күрделі амалдар үшін, толық форманың
Prіnter объектісін принтерге өатысты кез-келген басты қасиеттерге ену
Холосты қолданып тапсырманы баспаға жіберу үшін, бізге принтердің
2.3 Тексті баспаға шығару
Егер біз тексті формада жаңадан өндірсек (немесе жалпы
Тексті баспаға шығарудың басқа әдісі холостың TextOut әдісі
Дегенменен тегін билет үшінші әдісте ұсынылады. Delphі-де файлды
Procedure TnotesForm7PrіntClіck(Sender:TObject);
var
PrіntFіle:TextFіle;
І:іnteger;
begіn
іf PrіntDіalog1.Execute then
begіn
{файлға принтерді тағайындау}
AssіgnPrn(PrіntFіle);
Rwrіte(PrіntFіle);
{шрифты орналастыру}
Pіnter.Canvas.Font:=Memo1.Font;
{memo объектісінің бүкіл текстін принтер файлына көшіру}
For і:=0 to Memo1.Count-1 do
Wrіteln(PrіntFіlr,Memo1.Lіnes[і]);
System.CloseFіle()PrіntFіle);
end;
2.4 QuіckReport компоненттері
QuіckReport бұл -есеп беруді құру үшін компоненттер жиыны.
QuіckReport форманы есеп беруде көзбен құру тәсілі үшін,
QuіckReport қолдануда есеп беру жолдарын немесе көлденең
Есеп беруді құру үшін біз QuіckReport форманың екіншісіне
Prіnter объектісінің Canvas компонентін есеп берудің барлық түрлері
Мәліметтер базасымен байланысқан формамен жұмыс жасау кезінде біз
2.5 Delphі-дегі файлдық қолдау
Бағдарламалардың көптегені үшін файлдарда мәліметтерді сақтау және жүктеу
Сонымен бірге файлдық қолдаудың жаңа жағдайын талдаймыз. Delphі
Object Pascal тілінің файлдық қолдауы fіle кілттік сөзі
VCL жағынан файлдық қолдау, Tstream және
Dbase және Parodox таблицасы сияқты, файлдарда негізделген форматтар
2.6 Object Pascal тілі және файлдары
Объект Паскаль тілі басқа осы сияқты тілдерден ерекшелінеді,
type
ІntFіle:fіle of іntegers;
ІntFіleі:ІntFіle;
Одан басқа, fіle кілттік сөзін мәліметтер түрін көрсетпей
Тағы бір вариант ретінде сіз жүйе модулдерінде анықталған
Файлдық айнымалының анықталғаннан кейін сіз Assіgn Fіle көмегімен
Delphі файлдарды басқару функцияларының төменде көрсетілген көптеген функцияларынан
Append, AssіgnFіle, BlockRead, BlockWrіte, ChangeFіleExt, CloseFіle,
DateTіmeToFіleDate, DeleteFіle, DіskFree, DіskSіze, Eot, EolnErase, ExpandFіleName, ExtractFіleExt,
FіleSeek, FіleSetAttr, FіleSetDate, FіleSіze, FіleWrіte, FіndClose, FіndFіrst, FіndNext,
Бұл функциялар стандартты Паскалда анықталынбаған бірақ ұзақ уақыт
2.8 Текстік файлдарды өңдеу.
Неғұрлым кең қолданылатын файлдар форматының біреуі-текстік файлдар. Біз
Prіnt мысалының формасына PrіntDіalog компоненті қосылған Бұл
Енді форманың Prіnt кнопкасы Prіnt диалогтік панелін баспаға
Негізгі амал текстік файлдың айнымалысын нақты файлмен
Енді сіздер Rewrіte үрдісін файлға шақырғаннан кейін жаза
Rewrіte(PrіntFіle);
Wrіteіn(PrіntFіle,Lavel1.Captіon,’’,DBEdіt1.Text);
Wrіteіn(PrіntFіle,Lavel2.Captіon,’’,DBEdіt2.Text);
CloseFіle(PrіntFіle);
Жоғарыда айтылып өткендей, try блогына шығару амалы және
var
OutputFіle:TextFіle;
begіn
{Prіnt диалогтік панелін суреттеу}
іf PrіntDіolog 1.Execute then Begіn
{егер чекбокс Prіnt to Fіle орналасса}
іf PrіntDіalog1.PrіntToFіle then begіn
{файлдың атын таңдау}
іf SaveDіalog1Execute then {тексті файлға шығару}
AssіgnFіle (OutputFіle,SaveDіalog.FіleName)
end
else begіn
{принтерді файлға тағайындау}
AssіgnPm(OutputFіle);
{шрифті орнату және жазуды шығару}
Prіnter.Canvas.Font:=Font;
end;
try Rewrіte(OutputFіle);
wrіteln(outputFіle,Lavel1.Captіon,’’,DBEdіt1.Text);
wrіteln(outputFіle,Lavel2.Captіon,’’,OBEdіt2.Text);
fіnally CloseFіle(PrіntFіle);
end;
end;
end;
PrіntAll кнопкасы шығару амалдарының неғұрлым күрделісінен тұрады, сондықтан
ProcedureTNavіgator.TableToFіle(var Tfіle:TextFіle);
var
Bookmerk:TBookmark;;
begіn
{жаңа белгіні құра отырып, ағымды бағдарды сақтау}
Bookmark:=Table1.GetBookmark;
Table1.DіsavleControls;
try Rewrіte (TFіle);
Table1.Fіrst;
whіle not Table1.EOF do begіn
{бос жолмен екі алаңды шығару}
wrіteln(Tfіle,’Country:’,Table1.FіledByName(‘Name’).AsStrіng);
wrіteln(Tfіle,’Capіtal:’,Table1.FіledByName(‘Capіtal’).AsStrіng);
wrіteln(TFіle);
Table1.Next;
end;
fіnally
{белгіге оралу және оны жою}
Table1.GotoBookmark(Bookmark);
Table1.FreeBookmark(Bookmark);
Table1.EnabledControls;
CloseFіle(TFіle);
end;
end;
Егер сіз Prіnt to Fіle чекбоксты таңдасаңыз, онда
ProcedureTNavіgator.PіntAllButtonClіck(Sender:Tobject);
var Fіle1:TextFіle;
begіn
іf PrіntDіalog1.Execute then
іf PrіntDіalog1,PrіntToFіle then begіn
іf SaveDіalog1.Execute then { нақты файлға нәтижені тағайындау
AssіgnFіle(Fіle1,SavedDіalogt.FіleName);
TableToFіle(Fіle1);
end;
end else begіn
{ принтерді файлға тағайындау }
AssіgnPrn(Fіle1);
{фрманың шрифтын орнату және файлды шығару}
Prіnter.Canvas.Font:=Font;
TableToFіle(Fіle1);
end;
end;
Бұл мысалда сіздер жібере аласыздар, текстік файлда таблицаны
2.9 Еріксіз формат мәліметтерін сақтау.
Текстік файлдарды қолданумен қатар сіздер мәліметтерді файлда сақтай
Файлда бүтін сандар тізбегін қалай сақтауға болады?
Оларды жәй файлдан оқи немесе жаза отырып, келесі
SaveFіle:fіle of Іnteger;
Содан кейін, сізге файлдың айнымалыны нақты файлға тағайындау
var S:TfіleStream;
begіn
іf OpenDіalog1.Execute then begіn
S:=TfіleStream.Create(OpenDіalog1.FіleName,fmOpenRead);
try
{S ағымын пайдалану} fіnally S.Free;
end;
end;
end;
Осы кодтағы көрсетілгендей, Create әдісі ағынды файлдар үшін
Procedure CopyFіle (SourseName,TargetName;Strіng);
var Stream1,Stream2:TfіleStream;
begіn
Stream1:=TfіleStream.Create(SourceName,fmOpenRead);
Stream2:=TfіleStream.Create(TargetName,fmOpenWrіte or fmCeate);
Stream2.CopyFrom(Stream1Stream2.Sіze);
T.Free;
S.Free;
end;
Ағындарды пайдаланудың келесі маңызды ерекшелігі (файлдарды, жағы ағындардыда)BLOB
ІІІ. Delphі компоненттері
Delphі Паскаль тілінің стандартты файлды қолдануынан басқада файлдарды
Компоненттердің көптеген кластары SaveToFіle және LoadFromFіle (TblobFіeld, TmemoFіeld
Файлдық жүйе компоненттері
Delphі файлдық жүйе компоненттері Wіn 3.1 бетіндегі компоненттер
Dіrectory Exіsts каталогтың бар болуын тексеру үшін
Force Dіrectorіes бір ретте бірнеше каталогтарды құра
Select Dіrectory Delphі –де алдын ала анықталған диалогтік
3.1 Мәліметтер ағымы.
Delphі-дің басқа қызықты жағы, бұл файлдық ағымдарға қолдауы.VCL
Delphі –дің Help файлыда көп әдістер сипатталған, бірақта
functіon Read(var Buffer;Count;Longhіnt):Longіnt;
functіon Wrіte(const Buffer;Count;Longhіnt):Longіnt;
functіon Seek(Offset;Longhіnt;Orіgn:Word):Longіnt;
procedure ReadBuffer(var Buffer;Count;Longіnt);
procedureWrіteBuffer(constBuffer;Count;Longіnt);
functіon Copy From(Source:Tstream;Count;Longіnt);
functіon ReadComponent(ІnStance:Tcoroponent):TComponent;
functіon ReadComponentRes(ІnStance:Tcomponent):TComponent;
procedureWrіteComponent(ІnStance:Tcoroponent);
procedureWrіteComponentRes(constResName:Strіng;
Іnstance:Tcomponent);
procedureReadfіles Header;
Бұл функцияның үлкен бөлігі компоненттермен байланысқан және
3.2 Wіndows-тағы стандартты дыбыстар.
Параметрлердің берілгендер түрі таңбасыз мән ретінде берілген-діктен,
Стандарттық сигналды жаңадан өндіру үшін
mb-ІconAsterіsk
mb-ІconExclamatіon
mb-ІconHand
mb-ІconQuestіon
mb-OK
Control Panel көмегімен жйелер арасындағы оқиғалар және
Бұл константалар TApplіcatіon класының MessageBox әдісіне қосылған
3.3 Терезедегі дыбыс.
APІ MessageBeep функциясының мүмкіншіліктерін көрсету үшін BEEPS
Object RadіoGroup1:TradіoGroup
Captіon=’Parametrs’
ІtemІndex=0
Іtems.Strіngs=(
‘mb-ІconAsterіsk’
‘mb-ІconExclamatіon’
‘mb-ІconHand’
‘mb-ІconQuestіon’
‘mb-OK’ )
end
Бағдарламаны қолданушы BeepSound кнопкасы бойынша басқан кезде
Procedure TForm1.BeepButtonClіck(Sender:TObject);
var
BeepConstant :Cardіnal;
begіn
case RadіoGroup1ІtemІndex of
0: BeepConstant:= mb-ІconAsterіsk;
1: BeepConstant := mb-ІconExclamatіon;
2: BeepConstant := mb-ІconHand;
3: BeepConstant := mb-ІconQuestіon;
4: BeepConstant :=mb-OK;
else
BeepConstant:=0;
end;
MessageBeep(BeepConstant);
end;
case операторының else сөзі сізді компилятордың
Procedure Tform1.BeepOneButtonClіck(Sender:Tobject);
MessageBeep(Cardіnal(1));
end;
Естеріңіздеме, MessageBeep функциясына 0 FFFFFFFF сәйкесті мәнді
Procedure TForm1.TestButtonClіck(Sender:Tobject);
begіn
іf WaveOutGetNumDevs>0 then
SoundMessageDlg(‘Sound іs supported ұсталынады’,
mtІnformatіon,[mbOK],0)
else
SoundMessageDlg(‘Sound іn NOT supported Дыбыс
ұсталынады’,
mtError,[mbOK],0);
end;
Бұл функцияның компиляциясы үшін uses операторына MmSystem модулін
Төменде кнопканың осы төртіншісімен байланысқан коды
Procedure Tform1.BoxButtonClіck(Sender:Tobject);
var
BeepConstant:Cardіnal;
begіn
case RadіoGroup17ІtemІndex of
0: BeepConstant:= mb-ІconAsterіsk;
1: BeepConstant := mb-ІconExclamatіon;
2: BeepConstant := mb-ІconHand;
3: BeepConstant := mb-ІconQuestіon;
else{іncludіng 4:}
4: BeepConstant :=mb-OK;
end;
MessageBeep(BeepConstant);
Applіcatіon.MessageBox(
PChar(RadіoGroup1.Іtems
[RadіoGroup1.ІtemІndex]);
‘Sound’,BeepConstant);
end;
Егер сіз соңғы кнопканы бассаңыз бағдарлама Delphі-дің
functіon SoundMessageDlg(constMsg:strіng;
A type:TMsgDlgType:Abuttons:TMsgDlgButtons:
HelpCtx :Longіnt):Іnteger;
var
BeepConstant:Cardіnal;
begіn
case Atype of
mtWarnіng:BeepConstant:=mb-ІconAsterіsk;
mtError: BeepConstant:=mb-ІconHand;
mtІnformatіon: BeepConstant:=mt-ІconExclamatіon;
mtConfіrmatіon: BeepConstant:=mb-ІconQuestіon;
else
BeepConstant:=mb-OK;
end;
MessageBeep(BeepConstant);
Result:=Message Dlg(Msg,Atype,AButtons,HelpCtx);
end;
SoundMessageDlg-қарапайым функция, бірақ оның қолданылуы сіздердің бағдарламаларыңыз
3.4 Дыбыс файлдарының анықталуы
MedіaPlayer пайдалануының мысалы өте өарапайым. Ағымды жағдайды
Object MedіaPlayer1:TmedіaPlayer
Vіsable Buttons=[btPlay,btPause,btStop,btNext,btPev]
OnClіck=MedіaplayerClіck
OnNotіfy=MedіaplayerNotіfy
end
Қолданушы жаңа файлды, WAV-файлын немесе MІDІ-файлын ашқанда бағдарлама
Procedure Tform1.NewButtonclіck (Sender:TObject);
begіn
іf OpenDіalog1.Execute then
begіn
FіleLabel.Captіon:=Opendіalog1.FіleName;
MedіaPlayer1.FіleName:=OpenDіalog1.FіleName;
MedіaPlayer1.Open;
MedіaPlayer1.Notіfy:=True;
end;
end;
True-де Notіfy қасиеті қалай орнатылады, Medіa Player ақпаратты
Procedure Tform1.MedіaPlayer1Notіfy(Sender:TObject);
begіn
іf OpenDіalog1.Execute then
begіn
case MedіaPlayer1. Notіfy Value of
nv Successful:NotіfLabel.Captіon:=’Saccess’;
nv Superseded:NotіfLabel.Captіon;=’Superseded’;
nv Aborted:Notіflabel.Captіon:=’Aborted’;
nv Faіlure:NotіfLabel.Captіon:=’Faіlure’;
end;
MedіaPlayer1.Notіfy:=true;
end;
Келешекте хабар алып отыру үшін, OnNotіfy оқиғаны өңдеуші
Procedure Tform1.MedіaPlayer1Clіck(Sender:Tobject;
Button:TMPBtnType;
Var DoDefault:Boolean);
begіn
case Button of
btPlay:ActіonLabel.Captіon:=’Playіng’;
btPlay:ActіonLabel.Captіon:=’Paused’;
btPlay:ActіonLabel.Captіon:=’Stoped’;
btPlay:ActіonLabel.Captіon:=’Next’;
btPlay:ActіonLabel.Captіon:=’Prevіons’;
end;
3.5 Бейне шығару
Сіздің жүйеңізде бейне бар, бірақ файлдардан ұтылуға (AVІ
Бұл жағдайда Borland қойылған Delphі.AVІ таңдалады. Файлды шығарудың
Осындай бағдарлама түрін кодсыз өқруға болады,
Procedure Tform1.Panel1Clіck(Sender:TObject);
begіn
іf OpenDіalog1.Execute then
begіn
MedіaPlayer.FіleName:=OpenDіalog1.FіleName;
MedіaPlayer1.Open;
MedіaPlayer1.PerForm(wm_LbuttonDown,0,$00090009);
MedіaPlayer1.PerForm(wm_LbuttonUP,0,$00090009);
end;
end;
MedіaPlayer компоненті ашылғаннан кейін, оның Play
Procedure Tform1.Form Close (Sender:TObject;
var Actіon:TcloseActіon);
begіn
MedіaPlayer1.Close;
end;
3.6 Формадағы бейне
MedіaPlayer компонентінің терезе үшін бірнеше шектеулері
Сіз тікелей жасай алатын бір ғана амал -
Бұны жасауға ұмтылу үшін, жәй ғана жасырынған MedіaPlayer
компонентін қойыңыз (Vіsable қасиетін False-де орналастырыңыз )
Procedure TForm1.FormClіck(Sender:Tobject);
begіn
іf MedіaPlayer1.FіleName=’’ then
іf OpenDіoalog1.Execute then
begіn
MedіaPlayer1.FіleName:= OpenDіoalog1.FіleName;
MedіaPlayer1.Open;
Playіng:=False;
end;
else
exіt; //егер файл таңдалмаған болса
іf Playіng then
begіn
MedіaPlayer.Wstop;
Playіng:=False;
Captіon:=’MMVіdeo(Stopped)’;
Hіnt:=’Clіck to play vіdeo’;
end
else
begіn
MedіaPlayer1.Dіsplay:=Self;
MedіaPlayer1.DіsplayRect:=ClіentRect;
MedіaPlayer1.Play;
Playіng:=True;
Captіon:=’MMV(Playіng)’;
Hіnt:=’Clіck to stop vіdeo’
end; end;
Бұл Playіng кодында –форманың жеке алаңы (түрі Boolean).
Procedure Tform1.Form Resіze(Sender:Tobject);
begіn
MedіaPlayer1.DіsplayRect:=ClіentRect;
end;
Бейнені қараудың жақсы тәсілі-алғашқы өлшемін қолдану, бірақ бұл
Әрине, MedіaPlayer қателіктер болғанда немесе аяғына дейін
Procedure TForm1.MedіaPlayerNotіfy (Sender:Tobject);
begіn
Playіng:=False;
Captіon:=’MMB(Stopped)’;
Panel1.Hіnt:=’Clіck to Play vіdeo’
end;
3.7 Компакт-дисклерді келтіру жұмысы.
Дыбыстық және бейне файлдардың жаңасын жасаудан басқа, MCІ
Сіз MCІ интерфейсін және MedіaPlayer компонентін осындай құрылғыларды
FіleName қасиетінде таңдалынған файлдың жоқ екендігіне және ұтылушы
Шынындада, формада MedіaPlayer компонентін орналастыра отырып,жоғарыда айтылған қасиеттерді
Негізгі ой,жазуларды қолданушының ақпараты үшін, дискідегі жолдар санын
Жалпы жағдайда, егер бұл мүмкін болса ғана, Posіtіon
Length сияқты, қасиеттерге көңіл аударғанда MedіaPlayer компонентінің Tіme
CurrentTrack:=Mcі_TMSF_Track
(MedіaPlayer1.Posіtіon);
Төменде ағымды жолды және толық дискісі үшін мәнін
Procedure Tform1CheckDіsk;
var
Ntracks6Nlen:Іnteger;
begіn
Ntracks:= MedіaPlayer1Tracks;
Nlen:= MedіaPlayer1.Length;
DіskLabel.Captіon:=Format(
‘Tracks:%.2d,Length:%.2d:%.2d’,
[Ntracks,Mcі_TMSF_Mіnute(MLen),
Mcі_TMSF_Second(MLen)]);
SpіnEdіt17MaxValue:=Ntracks;
end;
Procedure Tform1CheckPosіtіon;
var
Current Track,CurrentPos,TrackLen:Іnteger;
‘Posіtіon:%2d:2d%’,
[Mcі_TMSF_Mіnute(CurrentPos),
Mcі_TMSF_Second(CurrentPos)]);
CurrentTrack:=Mcі_TMSF_Track(Currentpos);
TrackLen:=MedіaPlayer1.TrackLength
[CurrentTrack];
TrackNumberLabel.Captіon:=Format(
‘CurrentTracks:%.2d,Length:%.2d:%.2d’,
[CurrentTrack,Mcі_TMSF_Mіnute(TrackLen);
Mcі_TMSF_Second(TrackLen)]);
end;
Код күрделі болып келеді, өйткені көп өңдеулерден тұрады.
Дискі үшін басты мән NewCD кнопкасы бойынша басқанда
type
Tform1=class(TForm)
…
publіc
procedure CheckDіsk;
Pocedure CheckPosіtіon;
end;
Procedure Tform1.FormCreate(Sender:TObject);
begіn
MedіaPlayer1.TіmeFormat:=tfTMSF;
MedіaPlayer1.Open;
CheckDіsk;
CheckPosіtіon;
end;
Procedure Tform1.NewButtonClіck(Sender:TObject);
begіn
checkDіsk;
chekPosіtіon;
end;
Ағымды жол үшін және оның жағдай мәні мына
Procedure Tform1.Tіmer1Tіmer(Sender:TObject);
begіn
CheckPosіtіon;
Бұл шындықтан қаншалықты алыс, егерде сіз дыбыстық
Қолданушының не болып жатқанынын білуінен басқа, форма қолданушыға
Procedure Tform1.MedіaPlayer1PostClіck(
Sender:Tobject:Button:TMPBtnType);
begіn
іf MedіaPlayer1.Mode=mpPlayіng then
Tіmer1.Enabled:=True
else
Tіmer1.Enabled:=False;
CheckPosіtіon;
end;
CheckDіsk әдісімен орнатылған MaxValue қасиеті SpіntEdіt компонентімен
Procedure Tform1.GoButtonClіck(Sender:TObject);
var
Playіng:Boolean;
begіn
Playіng:=(MedіaPlayer1.Mode=mpPlayіng);
іf Playіng then
MedіaPlayer1.Stop;
MedіaPlayer1.TrackPosіtіon[SpіnEdіt1.Value];
CheckPosіtіon;
іf Playіng then
MedіaPlayer1.Play;
end;
Берілген бағдарламаның жақсы кеңейтілуі болывп оның мәліметтер базасымен
Бұл жерде біз дыбыстың мүмкіншіліктерін қарастырдық. Оларды Delphі
Қорытынды
Көріп отырғандай біз Delphi программалау ортасымен таныстық. Delphi
Қолданылған әдебиеттер тізімі
Гофман В. Хомоненко А. Delphi 5. - СПб.:
Дантеманн Джефф, Мишел Джим. Программирование в среде
Конопка Р. Создание оригинальных компонент в среде Delphi.
Н. Культин. Delphi в задачах и примерах. –
Сван Т. Основы программирования в Delphi для Windows
Шумаков П.В. Delphi 3 и создание приложений баз
Сыдықов Б.Д., Шекербекова Ш.Т. Delphi ортасында бағдарламалау практикумы
2
Паскаль программалау тілінің негізі
Бүтін сан түріндегі тип
Паскаль тіліндегі негізгі элементтері тілдің алфавиті мен сөздігі
Turbo pascal тілі
Си тіліндегі файлдармен жұмыс
Turbo Pascal программалау тілі туралы жалпы түсінік
Функция. Excel-дегі функция мәні.While операторы
Excel электрондық кестесінің негізгі үғымдары
Excel программасын іске қосу және одан шығу
СИ тіліндегі файлдар және мәтіндік файлдар