- •Київський національний університет
- •Практична робота 1 Програми лінійної структури
- •Практична робота 2 Програми розгалуженої структури
- •Практична робота 3 Програмна реалізація функцій для роботи з датою та часом
- •Практична робота 4 Програма для роботи з візуальними компонентами керування
- •Практична робота 5 Програми циклічної структури
- •Практична робота 6 Програми для роботи з масивами даних
- •Практична робота 7 Програми для роботи з рядками даних
- •Практична робота 8 Створення інтерфейсу користувача стандартними подіями
- •Практична робота 9 Програми для роботи з власними функціями
- •Практична робота 10 Програми для роботи зі структурами даних
- •Практична робота 11 Програми для роботи з файлами
- •Практична робота 12 Програми для роботи з графічної підсистемою
- •Практична робота 13 Програми для роботи з глобальними ідентифікаторами Screen, Mouse, Application
- •Практична робота 14 Програми для роботи зі стандартними діалоговими компонентами
- •Практична робота 15 Програма для роботи з аудіо- та відео- файлами
Практична робота 12 Програми для роботи з графічної підсистемою
Завдання 12.1
Користуючись командами мови програмування С++ написати програму для виведення на екран наступних фігур
а=82; а=101; а=69;
X,Y = 100,50;
Примітка:
a) Габаритні розміри зображень геометричних фігур вибираються в залежності від варіанта з наведеної вище таблиці.
b) Розмір «а» для креслення геометричних фігур та їх координати Х, Y на екрані. Координати Х, Y визначають верхній лівий кут прямокутника, описаного навколо геометричної фігури.
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Form1->Canvas->Brush->Style = bsClear;
Form1->Canvas->Rectangle(50,50,200,200);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClick(TObject *Sender)
{
Form1->Canvas->Brush->Style = bsClear;
Form1->Canvas->Rectangle(50,70,150,150);
Form1->Canvas->MoveTo(50,70);
Form1->Canvas->LineTo(150,150);
Form1->Canvas->MoveTo(50,150);
Form1->Canvas->LineTo(150,70);
Form1->Canvas->MoveTo(100,150);
Form1->Canvas->LineTo(100,70);
Form1->Canvas->MoveTo(50,110);
Form1->Canvas->LineTo(150,110);
Form1->Canvas->Rectangle(250,80,320,200);
Form1->Canvas->MoveTo(319,140);
Form1->Canvas->LineTo(400,140);
Form1->Canvas->MoveTo(250,120);
Form1->Canvas->LineTo(190,120);
Form1->Canvas->MoveTo(250,150);
Form1->Canvas->LineTo(190,150);
Form1->Canvas->MoveTo(250,170);
Form1->Canvas->LineTo(190,170);
Form1->Canvas->MoveTo(500,80);
Form1->Canvas->LineTo(500,150);
Form1->Canvas->MoveTo(515,80);
Form1->Canvas->LineTo(515,150);
Form1->Canvas->MoveTo(515,110);
Form1->Canvas->LineTo(550,110);
Form1->Canvas->MoveTo(500,110);
Form1->Canvas->LineTo(450,110);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
int X, int Y)
{
Label1->Caption = "X=" + IntToStr(X) + " Y=" + IntToStr(Y);
}
//---------------------------------------------------------------------------
Завдання 12.2
Підготувати програму на мові С++ для виведення на екран двох рядків тексту. Рядки вказаного тексту надрукувати двома гарнітурами і кеглями .
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::RadioButton1Click(TObject *Sender)
{
if (RadioButton1->Checked)
{ Label1->Font->Size = 8;
Label1->Font->Style = Label1->Font->Style>>fsBold;
Label1->Caption = "Software development\nSergey Ivanuk";
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::RadioButton2Click(TObject *Sender)
{
if(RadioButton2->Checked)
{
Label1->Font->Style = Label1->Font->Style<<fsBold;
Label1->Font->Size = 14;
Label1->Caption = "Software development\nSergey Ivanuk";
}
}
//---------------------------------------------------------------------------
Завдання 12.3
Написати програму для побудови на екрані фігури.
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClick(TObject *Sender)
{
int n = 0;
Form1->Canvas->Brush->Style = bsClear;
for(int i = 0;i < 20;i++)
{
Form1->Canvas->Rectangle(100+n,100+n,300-n,300-n);
n += 5;
}
}
//---------------------------------------------------------------------------