Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
С++_навч_пос14_new.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.86 Mб
Скачать

TComboBoxEx – комбінований список зі значками

ComboBoxEx1->Images=ImageList1; //список рисунків для ComboBoxEx1

ComboBoxEx1->ItemsEx->AddItem("1",0,0,0,0,NULL); //добавити елемент

ComboBoxEx1->ItemsEx->AddItem("2",1,1,1,1,NULL); //добавити елемент

ComboBoxEx1->ItemsEx->AddItem("3",1,1,1,0,NULL); //добавити елемент

4.7 Компоненти System tTimer - таймер

//конструктор форми

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

Form1->Caption="0"; //надпис на формі

Timer1->Interval=2000; //інтервал таймеру – 2 секунди

Timer1->Enabled=true; //включити таймер

}

//пройшов інтервал часу

void __fastcall TForm1::Timer1Timer(TObject *Sender)

{

int t=StrToInt(Form1->Caption); //t – кількість мілісекунд

//якщо t<10000 змінити надпис форми

if (t<10000)Form1->Caption=t+Timer1->Interval;

else Timer1->Enabled=false; //інакше виключити таймер

}

TPaintBox – область рисування, tCanvas - канва, tBrush - пензель, tPen - перо

//при необхідності перерисування зображення

void __fastcall TForm1::PaintBox1Paint(TObject *Sender)

{

//створити графічний об’єкт bmp

Graphics::TBitmap *bmp = new Graphics::TBitmap();

bmp->LoadFromFile("1.bmp"); //завантажити з файлу

PaintBox1->Canvas->Draw(30,50,bmp); //нарисувати bmp в заданих координатах

PaintBox1->Canvas->TextOutA(10,100,"Hello"); //вивести текст в заданих координатах

PaintBox1->Canvas->Ellipse(100,100,200,300); //нарисувати еліпс

PaintBox1->Canvas->Brush->Color=clRed; //колір пензля

PaintBox1->Canvas->FloodFill(110,200,clBlack,fsBorder); //залити площу в заданих координатах

PaintBox1->Canvas->Brush->Bitmap=bmp; //рисунок пензля - bmp

PaintBox1->Canvas->FloodFill(20,5,clBlue,fsSurface); //залити площу в заданих координатах

PaintBox1->Canvas->Pen->Width=5; //ширина пера

PaintBox1->Canvas->Pen->Style=psDashDotDot; //стиль пера

PaintBox1->Canvas->MoveTo(20,20); //перемістити перо в точку

PaintBox1->Canvas->LineTo(50,150); //рисувати лінію до точки

for(int x=0;x<200;x+=2)

//змінити колір пікселів з координатами [x][x] на червоний

{PaintBox1->Canvas->Pixels[x][x]=clRed;}

TPoint p[3]; //масив точок

p[0]=Point(0,0); //перша точка

p[1]=Point(100,90); //друга точка

p[2]=Point(250,50); //третя точка

PaintBox1->Canvas->Pen->Color = clBlue; //колір пера

PaintBox1->Canvas->Polygon(p,3); //нарисувати полігон по точкам p

PaintBox1->Canvas->Polyline(p,3); //нарисувати полілінію по точкам p

PaintBox1->Canvas->PolyBezier(p,3); //нарисувати лінію Без’є по точкам p

}

TMediaPlayer – мультимедіа плейер

//конструктор форми

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

MediaPlayer1->FileName="1.avi"; //ім’я файлу мультимедіа

MediaPlayer1->Open(); //відкрити

MediaPlayer1->Display=Panel1; //відображати вміст на Panel1

MediaPlayer1->TimeFormat = tfFrames; //формат часу - кадри

Caption=MediaPlayer1->Length; //вивести в надпис форми загальну кількість кадрів у файлі

}

//при натиску кнопки на MediaPlayer1

void __fastcall TForm1::MediaPlayer1Click(TObject *Sender,

TMPBtnType Button, bool &DoDefault)

{

DoDefault=false; //заборонити використання кнопок по замовчуванню

switch (Button) //якщо натиснута:

{

case btPlay: //кнопка "програвати"

MediaPlayer1->StartPos=3; //встановити початкову позицію

MediaPlayer1->Play(); //програвати

break;

case btPause: //кнопка "пауза"

//встановити позицію на попередню

MediaPlayer1->Position=MediaPlayer1->Position-1;

MediaPlayer1->Pause(); //пауза

break;

case btStep: //кнопка "крок"

MediaPlayer1->Frames=1; //кількість кадрів у кроці

MediaPlayer1->Step(); //перемістити на задану у Frames кількість кадрів

break;

case btNext: //кнопка "наступний"

//програти 5 раз фрагмент починаючи з позиції 2 до позиції 4

for (int i=1;i<5;i++)

{

MediaPlayer1->StartPos=2;

MediaPlayer1->EndPos=4;

MediaPlayer1->Wait=true;

MediaPlayer1->Play();

}

break;

}

}