|
I bob c++ builder dasturining grafik imkoniyatlari 6
|
bet | 12/17 | Sana | 18.05.2024 | Hajmi | 0,95 Mb. | | #242188 |
Bog'liq I bob c builder dasturining grafik imkoniyatlari 6Button1 tugmasi animatsiyani boshlash va uni toʻxtatish uchun xizmat qiladi. Animatsiyani uzluksiz namoyish etish jarayoni uchun “Pusk” tugmasiga OnClick hodisasini qoʻshish va Active xossasiga true qiymatni berish kerak boʻladi. Bu protsedura Button1 tugmasidagi Pusk nomini Stop bilan almashtiradi. Animatsiya rejimlari RadioButton1 va RadioButton2 tugmalari yordamida almashtiriladi. OnClick hodisasini qayta ishlovchi protsedura bu komponentalarda Enabled xossasini oʻzgartirish “bloklash” yoki “ochish” ni bajaradi. Kadrlarni oʻtkazish rejimi uchun moʻljallangan “oldingi” (Button2) , “keyingi” (Button3) tugmalarini faollashtiradi. Uzluksiz animatsiya jarayonini toʻxtatilishida Stop tugmasining Active xossasi false qiymatini oladi.
#include
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int CFrame;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{ TSearchRec sr;
if(FindFirst("*.avi",faAnyFile,sr)==0)
{ Edit1->Text=sr.Name;
try
{ Animate1->FileName=sr.Name; }
catch(Exception &e)
{ return;
}
RadioButton1->Enabled=true;
RadioButton2->Enabled=true;
Button1->Enabled=true; } }
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{ OpenDialog1->InitialDir="";
OpenDialog1->FileName="*.avi";
if(OpenDialog1->Execute())
{ try
{ Animate1->FileName=OpenDialog1->FileName; }
catch(Exception &e)
{ Edit1->Text="";
AnsiString msg="faylni ochishda xatolik"+OpenDialog1->FileName+"\n ovoz soprovoj animatsiya boʻlishi mumkin";
ShowMessage(msg);
return; }
Edit1->Text=OpenDialog1->FileName;
RadioButton1->Enabled=true;
RadioButton2->Enabled=true; } }
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{ if(Animate1->Active)
{ Animate1->Active=false;
Button1->Caption="Boshlash";
RadioButton2->Enabled=true; }
else {
Animate1->StartFrame=1;
Animate1->StopFrame=Animate1->FrameCount;
Animate1->Active=true;
Button1->Caption="Stop";
RadioButton2->Enabled=false; } }
//---------------------------------------------------------------------------
void __fastcall TForm1::RadioButton1Click(TObject *Sender)
{ Button1->Enabled=true;
Button2->Enabled=false;
Button3->Enabled=false;
Animate1->Active=false; }
//---------------------------------------------------------------------------
void __fastcall TForm1::RadioButton2Click(TObject *Sender)
{ Button1->Enabled=false;
Button2->Enabled=true;
Button3->Enabled=false;
Animate1->StartFrame=1;
Animate1->StopFrame==1;
Animate1->Active=true;
CFrame = 1; }
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{ CFrame++;
Animate1->StartFrame=CFrame;
Animate1->StopFrame==CFrame;
Animate1->Active=true;
if(CFrame>1)
Button3->Enabled=true;
if(CFrame==Animate1->FrameCount)
Button2->Enabled=false;}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{ if(CFrame==Animate1->FrameCount)
Button2->Enabled=true;
CFrame--;
Animate1->StartFrame=CFrame;
Animate1->StopFrame=CFrame;
Animate1->Active=true;
if(CFrame==1)
Button3->Enabled=false;}
Keltirilgan dastur ishlashi natijasida koʻzlangan maqsadga erishildi va natijalar olindi:
2.6.Rasm. Animate komponentasidan foydalanib tuzilgan dastur natijasi
MediaPlayer komponentasi bir qator ovozli fayllarni (WAV,MID,RMI,MP3) boshqarish imkonini beradi. Bu komponenta System komponentalar palitrasida joylashgan[2,16].
2.7.Rasm.MediaPlayer komponentasining belgisi.
Bu komponenta oddiy video yoki audio playerda foydalaniladigan bir qator tugmalarni oʻzida saqlaydi. Bu tugmalarning vazifalari quyidagi jadvalda keltirilgan:
2.8.Rasm MediaPlayer komponentasining forma sirtidagi koʻrinishi
Quyidagi jadvalda MediaPlayer komponentasining formaga joylashtirilgan holatida faollashadigan xossalari keltirilgan :
10-Jadval MediaPlayer komponentasining xossalari
Xossasi
|
Vazifasi
|
Name
|
Komponenta nomi. Ishchi holatda kompyuterning mavjud xossalari
|
DeviceType
|
Qurilma turi.MediaPlayer komponentasi uchun aniq qurilmani belgilaydi.Qurilma turi nomlangan konstantalar bilan beriladi: dtAutoSelect – fayllar kengaytmasi boʻyicha turni avtomatik aniqlash, dtVaweAudio – ovoz chiqarish uskuna,dtAviVideo – videoni koʻrish uskunasi, dtCDAudio – CD uskunasi
|
FileName
|
Namoyish etiladigan videorolik yoki ovozli fayl nomi
|
AutoOpen
|
Ovozli fayl yoki videorolikni dastur ishga tushishi bilan avtomatik yuklash belgisi
|
Display
|
Videorolikni namoyish etuvchi ekran koʻrinishini aniqlash(oddiy sifatdagi video uchun Panel komponentasidan foydalaniladi)
|
Visible Buttons
|
Tarkibiy xossa.Komponentaning koʻrinadigan tugmalarini aniqlaydi.Ayrim tugmalarning koʻrinmas boʻlishini ta’minlaydi.
|
Komponentaning formadagi ishchi holatida faol boʻlgan xossalar dastur ishlashi davomida ham faol boʻladi va bular namoyish jarayonidagi bir qator ma’lumotlarni olish imkonini beradi.Davomiylik haqidagi ma’lumotni saqlovchi xossa turli formatda tasvirlanishi mumkin. Bular orasidan universal format sifatida tfMilliseconds formatini olish mumkin. Bunda davomiylik millisekundlarda ifodalanadi. Ayrim qurilmalar bir qancha qurilmalarni qoʻllab-quvvatlaydi. (Masalan,tfTMSF formati). Millisekundlarni minut va sekundlar yordamida ifodalash uchun ma’lum munosabatlardan foydalaniladi. Agar xossa tfTMSF formatida boʻlsa, u holda akslantirish MCI_TMSF_TRACK, MCI_TMSF_SECOND VA MCI_TMSF_MINUTE makroslari bilan amlga oshiriladi. Bu kabi foydali makroslarni mmsystem.h sarlavha faylidan olish mumkin.
11-Jadval. Dastur ishlashi jarayonida faol boʻlgan MediaPlayer komponentasining xossalari.
|
| |