5.1. Animate компоненті
Animate компоненті Win32 парағында орналасқан, ол кадрлары AVI-файлында орналасқандар үшін анимацияны шығаруға мүмкіндік береді.
Animate компонентінің белгісі
Animate компоненті формаға әдеттегідей қосылады. Компонентті формаға орналастырғаннан кейін оның қасиеттерін қою керек:
Animate компонентінің қасиеттері
|
Қасиет
|
Қызметі
|
|
|
Name
|
Компоненттің аты.
|
|
|
FileName
|
Компоненттің көмегі арқылы бейнеленетін анимация орналасқан AVI-файлының аты.
|
|
|
StartFrame
|
Анимацияның бейнеленуі басталатын кадрдың нөмірі
|
|
|
stopFrame
|
Анимацияның бейнеленуі аяқталатын кадрдың нөмірі
|
|
|
Activate
|
Анимация кадрларының бейнелену процессінің активтену белгісі
|
|
|
Color
|
Анимация іске қосылатын компоненттің фонының түсі
|
|
|
Repetitions
|
Анимацияның қайталану саны
|
|
|
|
|
|
Чтобы увидеть, что находиться в AVI-файлда не нәрсе бар екендігін көру үшін Windows-тан қажетті буманы ашып AVI-файлын көрсетіп жанама менюден Свойства командасын таңдап алу керек:
Сводка парағында AVI-файлы
туралы ақпарат шығады
Просмотр анимации
программасының формасы
Келесі программа Animate компонентінің қолдануына мысал келтірілген:
Animate1 компонентінің қасиеттері
|
Қасиеттер
|
Мәні
|
|
|
FileName
|
bart.avi
|
|
|
Active
|
False
|
|
|
Transparent
|
True
|
|
unit ShowAVI_;
interface
uses
Windows, Messages, SysUtils,
Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, ComCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Animate1: TAnimate;
// Animate компоненті
Button1: TButton; // Пуск-Стоп батырмасы
Button2: TButton; // келесі кадр
Button3: TButton; // алдыңғы кадр
RadioButton1: TRadioButton;
// барлық анимацияны қарап шығу
RadioButton2: TRadioButton;
// әр кадр бойынша қарап шығу
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations )
end;
var Form1: TForm1; // форма
CFrame: integer;
implementation {$R *.DFM}
procedure TForm1.Button2Click(Sender: TObject);
begin
if CFrame = 1 then
Button2.Enabled := True;
if CFrame < Animate1.FrameCount then begin
CFrame := CFrame + 1;
Animate1.StartFrame := CFrame;
Animate1.StopFrame := CFrame;
Animate1.Active := True;
if CFrame = Animatel.FrameCount
then Button2.Enabled:=False;
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if CFrame = Animate1.FrameCount
then Button2.Enabled := True;
if CFrame > 1 then begin
CFrame := CFrame — 1;
Animate1.StartFrame := CFrame;
Animate1.StopFrame := CFrame;
Animate1.Active := True;
if CFrame = 1 // текущий кадр — первый
then Form1.Button3.Enabled := False;
end;
end;
procedure TForml.RadioButtonlClick(Sender: TObject);
begin
Buttonl.Enabled:=True;
Form1.Button3.Enabled:=False ;
Form1.Button2.Enabled:=False;
end;
procedure TForm1.RadioButton2Click(Sender:TObject);
begin
Button2.Enabled:=True;
Buttons.Enabled:=False
Buttonl.Enabled:=False; end;
procedure TForm1.ButtonlClick(Sender: TObject);
begin
if Animate1.Active = False
then begin
Animate1.StartFrame:=l;
Animate1.StopFrame:=Animate1.FrameCount;
Animate1.Active:=True;
Button1.caption:='Стоп';
RadioButton2.Enabled:=False;
end
else
begin
Animate1.Active:=False;
Button1.caption:='Пуск';
RadioButton2.Enabled:=True;
end;
end;
end.
comonAVi қасиетінің мәндері анимацияны анықтайды
|
Мән
|
Анимация
|
Процесс
|
|
|
АviCopyFiles
|
|
Файлды көшіру
|
|
|
AviDeleteFile
|
|
Файлды алып тастау
|
|
|
aviRecycleFile
|
|
Файлды корзинаға алып тастау
|
|
5.2. MediaPlayer компоненті
MediaPlayer компонентінің белгісі System парағында орналасқан. Ол видеороликтерді, дыбысты және ды быспен байланысқан анимацияны шығаруға мүмкіндік береді.
MediaPlayer компонентінің белгісі
MediaPlayer компонентінің батырмалары
|
|
|
|
|
|
Батырма
|
Белгіленуі
|
Атқаратын қызметі
|
|
|
Шығару
|
btPlay
|
Дыбыс немесе аудионы шығару
|
|
|
Пауза
|
btPause
|
Шығаруды уақытша тоқтату
|
|
|
Стоп
|
btStop
|
Шығаруды тоқтату
|
|
|
Келесі
|
btNext
|
Келесі кадрге көшу
|
|
|
Алдыңғы
|
btPrev
|
Алдыңғы кадрге көшу
|
|
|
Қадам
|
btStep
|
Келесі дыбыстық фрагментке көшу, мысалы CD-дегі келесі әнге көшу
|
|
|
Назад
|
btBack
|
Алдыңғы дыбыстық фрагментке көшу, мысалы CD-дегі алдыңғы әнге көшу
|
|
|
Жазу
|
btRecord
|
Жазу
|
|
|
Ашу/Жабу
|
btEject
|
Компьютердің CD-дисководын ашу немесе жабу
|
|
5.3. Дыбысты шығару
Дыбыстық фрагменттер WAV кеңейтілуі бар файлдарда орналасқан. Мысалы, C:\Winnt\Media каталогында Windows стандартты дыбыстары бар файлдарды табуға болады.
Келесі программа WAV-файлдарда орналасқан дыбыстық фрагменттерді шығару үшін ediaPiayer компонентін пайдалану мүмкіндігін көрсетеді.
Microsoft Windows-тың дыбыстары программасының формасы
MediaPlayer1 компонентінің қасиеттерінің мәндері
|
|
|
|
|
Компонент
|
Мәні
|
|
|
DeviceType
|
DtAutoSelect
|
|
|
FileName
|
C:\Winnt\Media\3вук Microsoft.wav
|
|
|
AutoOpen
|
True
|
|
|
VisibleButtons . btNext
|
False
|
|
|
VisibleButtons .btPrev
|
False
|
|
|
VisibleButtons . btStep
|
False
|
|
|
VisibleButtons . btBack
|
False
|
|
|
VisibleButtons . btRecord
|
False
|
|
|
VisibleButtons .btEject
|
False
|
|
|
|
|
|
Листинг:
unit WinSound_; interface
uses
Windows, Messages, SysUtils,
Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, MPlayer;
type
TForm1 = class(TForm)
MediaPlayerl: TMediaPlayer; // медиаплеер
Label1: TLabel;
ListBox1: TListBox;
Label2: TLabel;
procedure FormActivate(Sender: TObject);
procedure ListBoxlClick(Sender: TObject);
procedure MediaPlayerlClick(Sender: TObject; Button: TMPBtnType;
var DoDefault: Boolean); private
{ Private declarations } public
{ Public declarations } end;
const
SOUNDPATCH='с:\winnt\media\';
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.FormActivate(Sender: TObject);
var
SearchRec: TSearchRec;
begin
Form1.MediaPlayer1.Play ;
if FindFirst(SOUNDPATCH+'*.wav', faAnyFile, SearchRec) =0 then
begin
Form1.ListBox1.Items.Add(SearchRec.Name) ;
while (FindNext(SearchRec) = 0) do
Form1.ListBox1.Items.Add(SearchRec.Name);
end;
end;
procedure TForm1.ListBoxlClick(Sender: TObject);
begin
Label2.Caption:=ListBox1.Items[ListBox1.itemlndex];
procedure TForm1.MediaPlayerlClick(Sender: TObject; Button: TMPBtnType;
var DoDefault: Boolean); begin
if (Button = btPlay) and (Label2.Caption <> '') then
begin
with MediaPlayerl do begin
FileName:=SOUNDPATCH+Label2.Caption;
Open;
end;
end;
end;
end.
Дыбысты жазу
Дыбыстық фрагментті алу үшін Windows-тың құрамындағы Звукозапись программасын пайдалануға болады. Ол үшін Пуск | Программы | Стандартные | Развлечения | Звукозапись командаларын таңдак керек.
Звукозапись
программасының диалогтық терезесі
WAV-файл келесі түрде құрылады. Алдымен дыбыстың қайнар көзін анықтау керек. Ол үшін Параметры менюінен Свойства командасын алып Регулятор громкости таңдау керек. Сонан соң Запись айырғышын таңдап Отображаемые регуляторы громкости тізіміндегі керекті сигналдарды орнату үшін жалаушаларды таңдау керек. Енді дыбысты жазуға көшуге болады.
Чтобы записать музыкальный или речевой фрагмент, надо запустить программу Звукозапись, активизировать диалоговое окно Уровень, выбрать устройство-источник звука,
Процессті тоқтату үшін Стоп батырмасын басу жеткілікті.
5.4. Видеороликтер мен анимацияны қарап шығу
MediaPlayer-ді қолдану программасының терезесі
MediaPlayer1 компонентінің қасиеттерінің мәні
|
Қаситет
|
Мән
|
|
|
Name
|
MediaPlayer1
|
|
|
FileName
|
delphi.avi
|
|
|
DeviceType
|
dtAVIVideo
|
|
|
AutoOpen
|
True
|
|
|
Display
|
Panel1
|
|
|
Visible
|
False
|
|
Листинг:
uses
Windows, Messages, SysUtils,
Classes, Graphics, Controls,
Forms, Dialogs, MPlayer, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Label1: TLabel; Panel1: TPanelButton1: TButtonMediaPlayer1: TMediaPlayer; procedure ButtonlClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations ) public
{ Public declarations } end;
var
Form1: TForm1 ;
implementation
($R *.DFM}
procedure TForm1.ButtonlClick(Sender: TObject);
begin
MediaPlayer1.Play;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
MediaPlayer1.DisplayRect:=Rect(0,0,60,60);
end;
end.
Дельфи храмының эскизі
1
2
Бұл есепті шешу үшін Macromedia Flash 5 программасын қолдануға болады.
Достарыңызбен бөлісу: |