Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Розробка програмного забезпечення

ЗвітДопомога в написанніДізнатися вартістьмоєї роботи

Рядки вказаного тексту надрукувати двома гарнітурами, для кожної з яких задати два різних кеглі з наступними кутами нахилу відносно горизонтальної вісі: 00, 900. Написати програму, яка обчислить суму і середнє арифметичне послідовності додатних чисел, яка вводиться з клавіатури до тих пір, доки не буде введено нуль. Використовуючи класс TDateTime (оголошенийв модулі systdate. h) розробіть… Читати ще >

Розробка програмного забезпечення (реферат, курсова, диплом, контрольна)

КИЇВСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ

ІМЕНІ ТАРАСА ШЕВЧЕНКА ОПТИКО-МЕХАНІЧНИЙ КОЛЕДЖ

ЗВІТ З НАВЧАЛЬНОЇ ПРАКТИКИ

зі спеціальності 5.5 010 301 «Розробка програмного забезпечення»

Студентки 3-го курсу групи ПР-31

Жидейкіної Наталії Анатоліївни

КИЇВ — 2015

Зміст

Практична робота 1. «Програми лінійної структури»

Практична робота 2. «Програми розгалуженої структури»

Практична робота 3. «Програмна реалізація функцій для роботи з датою та часом»

Практична робота 4. «Програма для роботи з візуальними компонентами керування»

Практична робота 5. «Програми циклічної структури»

Практична робота 6. «Програми для роботи з масивами даних»

Практична робота 7. «Програми для роботи з рядками даних»

Практична робота 8. «Створення інтерфейсу користувача стандартними подіями»

Практична робота 9. «Програми для роботи з власними функціями»

Практична робота 10. «Програми для роботи зі структурами даних»

Практична робота 11. «Програми для роботи з файлами»

Практична робота 12. «Програми для роботи з графічної підсистемою»

Практична робота 13. «Програми для роботи з глобальними ідентифікаторами Screen, Mouse, Application»

Практична робота 14. «Програми для роботи зі стандартними діалоговими компонентами»

Практична робота 15. «Програма для роботи з аудіота відеофайлами»

Практична робота 1. «Програми лінійної структури»

Завдання 1.1

Дано значення температури TF в градусах Фаренгейта. Визначити значення тієї ж температури у гарадусах Цельсію TC = (TF — 32).

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

int tf, tc;

cout<<" tf=";

cin>>tf;

tc=(tf-32)*5/9;

cout<<" tc="<

system («pause»);

return 0;}

Завдання 1.2

Дано змінні A, B, C. Змінити їх значення, перемістивши вміст A у B, B у C, C у A. Вивести нові значення змінних.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

int A, B, C, D;

cout<<" A=";

cin>>A;

cout<<" B=";

cin>>B;

cout<<" C=";

cin>>C;

cout<

D=A;

A=C;

C=B;

B=D;

cout<<" A="<

cout<<" B="<

cout<<" C="<

system («pause»);

return 0;

}

Завдання 1.3

Знайти рішення (x, y) системи лінійних рівнянь виду:

заданої коефіцієнтами A1, B1, C1, A2, B2, C2, якщо відомо, що система має єдине рішення.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

double A1, B1, C1, A2, B2, C2, x, y;

cout<<" A1=";

cin>>A1;

cout<<" B1=";

cin>>B1;

cout<<" C1=";

cin>>C1;

cout<<" A2=";

cin>>A2;

cout<<" B2=";

cin>>B2;

cout<<" C2=";

cin>>C2;

cout<

y=(((A2*C1)-(A1*C2))/((B1*A2)-(B2*A1)));

x=((C1-(B1*y))/A1);

cout<<" x="<

cout<<" y="<

system («pause»);

return 0;

}

Завдання 1.4

Дано три точки A, B, C на числовій вісі. Точки C розміщена між точками A і B. Знайти добуток довжин сторін AC і BC.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include «math.h»

#include «conio.h»

int _tmain (int argc, _TCHAR* argv[])

{

double Xa, Xb, Ya, Yb, Yc, Xc, D=0;

cout<<" Xa=";

cin>>Xa;

cout<<" Xb=";

cin>>Xb;

cout<<" (Xa

else

{ cout<<" D="<

system («pause»); }

return 0;

}

Практична робота 2. «Програми розгалуженої структури»

Завдання 2.1

Дано тризначне число. Перевірити істинність висловлювання: «Всі цифри даного числа різні» .

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

int num;

cout<<" write three-digit numbernnumber=";

cin>>num;

if ((num>99)&&(num<1000))

{

if (((num/100)≠((num/10)%10))&&((num/100)≠((num%10)%10))&&(((num/10)%10)≠((num%10)%10)))

{

cout<<" three-digit number includ different numbersn" ;

}

else

cout<<" three-digit number includ same numbersn" ;

}

else

cout<<" you write wrong number" ;

system («pause»);

return 0;

}

Завдання 2.2

Дано ціле число, яке лежить в діпазоні 1−999. Винести його рядок — опис виду «парне двозночне число», «непарне тризначне число» і т.д.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

int num;

bool b=true;

cout<<" write number in the range from 1 to 999 nnumber=";

cin>>num;

if ((num>0)&&(num<10))

{cout<<" One-digit «;}

else

{if ((num>9)&&(num<100))

{cout<<" Two-digit «;}

else

{if (((num>99)&&(num<1000)))

{cout<<" Three-digit «;}

else

{cout<<" you write wrong numbern" ;b=false;}

}

}

if (b)

{

if (num%2==0)

{ cout<<" pair numbern" ;}

else

{ cout<<" unpair numbern" ;}

}

system («pause»);

return 0;

}

Практична робота 3. «Програмна реалізація функцій для роботи з датою та часом»

Завдання 3.1

Використовуючи класс TDateTime (оголошенийв модулі systdate. h) розробіть застосування для роботи з датою і часом, яке демонструватиме всі можливі операції над ними.

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

#include «systdate.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{

TDateTime DateTime = TDateTime: CurrentDateTime ();

int week=DateTime.DayOfWeek ();

switch (week)

{

case 1:{Label1->Caption ="monday"; break;}

case 2:{Label1->Caption ="tuesday"; break;}

case 3:{Label1->Caption ="wednesday"; break;}

case 4:{Label1->Caption ="thursday"; break;}

case 5:{Label1->Caption ="friday"; break;}

case 6:{Label1->Caption ="saturday"; break;}

case 7:{Label1->Caption ="sunday"; break;}

}

Label2->Caption ="DateTime «+DateTime.DateTimeString ();

Label3->Caption ="Date «+DateTime.DateString ();

Label4->Caption ="Time «+DateTime.TimeString ();

DateTime = TDateTime: FileDateToDateTime (FileAge (Application->ExeName));

Label5->Caption = «data and time of file: «+ DateTime. DateTimeString ();

}

//—————————————————————————————————————;

void __fastcall TForm1: Button2Click (TObject *Sender)

{

Application->Terminate ();

}

//—————————————————————————————————————;

void __fastcall TForm1: Button3Click (TObject *Sender)

{

TCursor OldCursor = Screen->Cursor;

Screen->Cursor = crHourGlass;

TDateTime StartDateTime = TDateTime: CurrentDateTime ();

for (int i = 0; i < 500 000; i++)

{

TDateTime (TDateTime:CurrentDateTime ().DateTimeString ());

Application->ProcessMessages ();

}

TDateTime EndDateTime = TDateTime: CurrentDateTime ();

Screen->Cursor = OldCursor;

Label6->Caption = (EndDateTime — StartDateTime).TimeString ();

}

//—————————————————————————————————————;

void __fastcall TForm1: Button4Click (TObject *Sender)

{

static TDateTime DateTime = TDateTime: CurrentDateTime ();

Label7->Caption = (DateTime++).DateTimeString ();

}

//—————————————————————————————————————;

void __fastcall TForm1: Button5Click (TObject *Sender)

{

static TDateTime DateTime = TDateTime: CurrentDateTime ();

Label8->Caption =(DateTime += 1.125).DateTimeString ();

}

//—————————————————————————————————————;

void __fastcall TForm1: Timer1Timer (TObject *Sender)

{ String TimeFormat, DateFormat;

if (CheckBox1->Checked)

DateFormat = «dddddd «;

else

DateFormat = «ddddd «;

if (CheckBox2->Checked)

TimeFormat = «hh:nn:ss» ;

else

TimeFormat = «hh:nn» ;

Label9->Caption = TDateTime: CurrentDateTime ().FormatString (DateFormat+TimeFormat);

}

//—————————————————————————————————————;

void __fastcall TForm1: CheckBox1Click (TObject *Sender)

{

if (CheckBox1->Checked)

Label9->Caption = TDateTime: CurrentDateTime ().FormatString («dddddd:hh:nn»);

else

Label9->Caption = TDateTime: CurrentDateTime ().FormatString («ddddd:hh:nn»);

}

//—————————————————————————————————————;

void __fastcall TForm1: CheckBox2Click (TObject *Sender)

{

if (CheckBox2->Checked)

Label9->Caption = TDateTime: CurrentDateTime ().FormatString («dd.mm.yy.hh:nn:ss»);//TimeFormat = «hh:nn:ss» ;

else

Label9->Caption = TDateTime: CurrentDateTime ().FormatString («dd.mm.yy.hh:nn»);// TimeFormat = «hh:nn» ;

}

Практична робота 4. «Програма для роботи з візуальними компонентами керування»

Завдання 4.1

За допомогою 2-х контейнерів Panel поділіть простір форми на дві частини (головна та нижня) з прив`язкою до її границь. На головній частині розмістіть кнопку Button. На нижній частині розиістіть компонент TrackBar. При зміні позицій «повзунка» TrackBar реалізуйте можливість зміни прозорості форми. При наведенні миші на кнопку Button реалізуйте можливість зміни її положення відносно форми з нможливістю виходу за межі форми.

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm2 *Form2;

//—————————————————————————————————————;

__fastcall TForm2: TForm2(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm2: TrackBar1Change (TObject *Sender)

{

Form2->AlphaBlendValue=TrackBar1->Position;

}

//—————————————————————————————————————;

void __fastcall TForm2: Button1Click (TObject *Sender)

{

int t=Panel1->Height — Button1->Height;

int t2=Panel1->Width — Button1->Width;

Button1->Top=rand ()%t;

Button1->Left=rand ()%t2;}

Практична робота 5. «Програми циклічної структури»

Завдання 5.1

Дано два цілі числа A і B (A

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

long A=0, B=0, N=0; bool boolean=true;

cout<<" A

cin>>A;

cout<<" B=";

cin>>B;

if (A

for (;A<=B;A++)

{

cout<<" «;

N++;

}

else

{cout<<" Error: A>B" ;boolean = false;}

cout<

if (boolean)

{

cout<<" N="<<" n" ;

}

system («pause»);

return 0;

}

Завдання 5.2

1.Обчислити значення змінної z =. Вивести значення a, b, z.

a =

де k — кількість інтерацій.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include «math.h»

double f1(double k)

{

double f=0;

f=(((cos ((2.1*k))*sin (abs (k)))/0.15)-5.8);

return f;

}

double f2(double k)

{

double f=0;

f=abs (((sin (k))/(3.12))+cos (pow (k, 2)));

return f;

}

int _tmain (int argc, _TCHAR* argv[])

{

double a=0,b=0,z=0;

int k=0;

cout<<" k=";

cin>>k;

for (int i=0;i<=k;i+=2)

{

a=f1(i);

if (i%8==0)

b=f2(i);

z=abs ((12*a)-b);

}

cout<<" b="<<" na="<

<" nz="<

system («pause»);

return 0;

}

Завдання 5.3

Спортсмен почав тренерування, пробіг у перший день 10 км. Кожен наступний день він збільшував довжину пробігу на Р відсотків від пробігу попереднього дня (0 < P < 50). За заданим Р визначити, після якого дня сумарний пробіг спортсмена за всі дні перевищить 200 км, і вмвести знайдену кількість днів К та сумарний пробіг S на екран.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

int P=0,K=1; double S=10;

cout<<" (0

system («pause»);

}

return 0;

}

Завдання 5.4

Написати програму, яка обчислить суму і середнє арифметичне послідовності додатних чисел, яка вводиться з клавіатури до тих пір, доки не буде введено нуль.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

int sum=0,number=0,i=1; double sr=0;

cout<<" number=";

cin>>number;

do

{

sum+=number;

sr=sum/i;

cout<<" sum="<<" sr="<

cout<<" number=";

cin>>number;

i++;

}

while (number≠0);

system («pause»);

return 0;

}

Завдання 5.5

Написати порграму, якаперевіряє, чи є введене користувачем число простим.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

int number=0;

bool boolean=true;

cout<<" number=";

cin>>number;

for (int i = 2; i < number; i++)

{

if ((number%i≠0)&&(number≠2)&&(number≠0))

{

cout<<" number is not primen" ;

boolean=false;

break;

}

}

if (boolean)

{ cout<<" number is prime" ;}

system («pause»);

return 0;

}

Практична робота 6. «Програми для роботи з масивами даних»

Завдання 6.1

Дано масив з N цілих чисел. Написати програму, яка змінить масив таким чином, щоб спочатку розміщювались всі числа, що не дорівнюють нулю, а в кінці нулі.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include «string.h»

int _tmain (int argc, _TCHAR* argv[])

{

int n=0,N=0;

cout<<" n=";

cin>>n;N=n;

int mas[1000];

for (int i=0;i

{

cout<<" mas[" <<" ]=";

cin>>mas[i];

}

cout<

for (int i=0;i

{

if (mas[i]==0)

{

for (int l=i;l

{

mas[l]=mas[l+1];

} mas[n-1]=0;—n;

}

}

for (int i=0;i

{

cout<<" mas[" <<" ]="<<

//cin>>mas[i];

}

system («pause»);

return 0;

}

Завдання 6.2

Написати програму, яка в цілочисленому масиві знайде і виведе на екран розмір найдовшої послідовності однакових чисел, що йдуть підряд, а також це повторюване число.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int _tmain (int argc, _TCHAR* argv[])

{

int n=0,I=1,MAX=0,NUMBER;

cout<<" n=";

cin>>n;

int mas[1000];

for (int i=0;i

{

cout<<" mas[" <<" ]=";

cin>>mas[i];

}

cout<

NUMBER=mas[0];

for (int i=1;i

{

if (mas[i]==mas[i-1])

{I++;}

else

{if (I>=MAX)

{

MAX=I;

NUMBER=mas[i-1];

I=0;

}

else

{I=0;}

}

}

cout<<" NUMBER="<<" MAX="<

system («pause»);

return 0;

}

Завдання 6.3

Дано дві квадратні матриці A розміром NxK MxK. Обчислити матрицю C за формулою: C = 8B *A*B — A — B4

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include «conio.h»

int _tmain (int argc, _TCHAR* argv[])

{

int k;

short A[100][100];

short B[100][100];

long B28[100][100];

long AB28[100][100];

long B2[100][100];

long B4[100][100];

long C[100][100];

long AB4[100][100];

cout<<" A: n" ;

{for (int i=0;i<5;i++)

{

for (int j=0;j<5;j++)

{

randomize;

A[i][j]=rand ()%10;

cout<<<" «;

// cout<<» A[" <<" ][" <<" ]=";

//cin>>A[i][j];

}cout<

} cout<<" n" ;

cout<<" B: n" ;

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

{

for (int j=0;j<5;j++)

{

//cout<<" B[" <<" ][" <<" ]=";

//cin>>B[i][j];

randomize;

B[i][j]=rand ()%10;

cout<<<" «;

}cout<

} system («pause»);

}

cout<<" B2: n" ;

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

{

for (int j=0;j<5;j++)

{k=0;

for (int t=0;t<5;t++)

{

k+= B[i][t]*B[t][j];

} B2[i][j]=k; cout<< B2[i][j]<<" «;

} } cout<

cout<<" B28: n" ;

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

{

for (int j=0;j<5;j++)

{

B28[i][j]=B2[i][j]*8; cout<< B28[i][j]<<" «;

} cout<<" nn" ;

}

cout<<" AB28: n" ;

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

{

for (int j=0;j<5;j++)

{k=0;

for (int t=0;t<5;t++)

{

k+= A[i][t]*B28[t][j];

} AB28[i][j]=k; cout<< AB28[i][j]<<" «;

} cout<

}

cout<

cout<<<" B4: n" ;

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

{

for (int j=0;j<5;j++)

{k=0;

for (int t=0;t<5;t++)

{

k+= B2[i][t]*B2[t][j];

} B4[i][j]=k; cout<< B4[i][j]<<" «;

} cout<

}

cout<<<" AB2: n" ;

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

{

for (int j=0;j<5;j++)

{k=0;

for (int t=0;t<5;t++)

{

k+= A[i][t]*B4[t][j];

} AB4[i][j]=k; cout<< AB4[i][j]<<" «;

}} cout<<<" C: n" ;

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

{

for (int j=0;j<5;j++)

{

C[i][j]= AB28[i][j]-AB4[i][j];

cout<< C[i][j]<<" «;

} cout<

}

cout<

system («pause»);

return 0;}

Практична робота 7. «Програми для роботи з рядками даних»

Завдання 7.1

Написати програму, яка буде виводити повідомлення в телеграфному стилі: букви повинні з’являтися по одній, з деякою затримкою.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include «string.h»

#include «windows.h»

using namespace std;

int _tmain (int argc, _TCHAR* argv[])

{char ch[]="" ;

cout<<" St=";

gets (ch);

int n = strlen (ch);

for (int i=0;i<=n;i++)

{

cout<<<" «;

Sleep (200);

}cout<<" n" ;

system («pause»);

return 0;}

Завдання 7.2

Написати програму, яка вичислить значення виразу N1O1N2O2…OkNk, где N — ціле однорозрядне число, O — один із знаків найпростіших арифметичних дій: додавання і віднімання.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include «string.h»

#include «windows.h»

using namespace std;

int _tmain (int argc, _TCHAR* argv[])

{

char St[100];

cout<<" (write number from 1 to 9 or + or -)nSt=";

int i=0;

int n=0;

cin>>St;

n=strlen (St);

int s =atoi (&St[0]);

for (int l=1;l<=n;l++)

{

switch (St[l])

{

case'+':{s+=atoi (&St[l+1]);i++;break;}

case'-':{s-=atoi (&St[l+1]);i++;break;}

}}

cout<<" s="<

system («pause»);

return 0;

}

Практична робота 8. «Створення інтерфейсу користувача стандартними подіями»

Завдання 8.1

Використовуючи компоненти ToolBar, ControlBar, PageScroller та ActionList створіть текстовий редактор «WordPad» .

//—————————————————————————————————————;

extern PACKAGE TForm1 *Form1;

//—————————————————————————————————————;

#endif

#include

#pragma hdrstop

#include «Urichedit.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{}

//—————————————————————————————————————;

/* TODO 2 -oСидоровcКод: Главное меню */

void __fastcall TForm1: MOpenClick (TObject *Sender)

{if (OpenDialog1->Execute ())

{FName = OpenDialog1->FileName;

RichEdit1->Lines->LoadFromFile (OpenDialog1->FileName);

RichEdit1->Modified = false;}}

//—————————————————————————————————————;

void __fastcall TForm1: MSaveAsClick (TObject *Sender)

{SaveDialog1->FileName = FName;

if (SaveDialog1->Execute ())

{FName = OpenDialog1->FileName;

RichEdit1->Lines->SaveToFile (SaveDialog1->FileName);

RichEdit1->Modified = false; }}

//—————————————————————————————————————;

void __fastcall TForm1: MFontClick (TObject *Sender)

{FontDialog1->Font->Assign (RichEdit1->SelAttributes);

if (FontDialog1->Execute ())

RichEdit1->SelAttributes->Assign (FontDialog1->Font);}

//—————————————————————————————————————;

void __fastcall TForm1: MNumbClick (TObject *Sender)

{MNumb->Checked = ! MNumb->Checked;

if (MNumb->Checked) RichEdit1->Paragraph->Numbering = nsBullet;

else RichEdit1->Paragraph->Numbering = nsNone;

}

//—————————————————————————————————————;

void __fastcall TForm1: MLeftClick (TObject *Sender)

{MLeft->Checked = true;

RichEdit1->Paragraph->Alignment = taLeftJustify;}

//—————————————————————————————————————;

void __fastcall TForm1: MRightClick (TObject *Sender)

{MRight->Checked = true;

RichEdit1->Paragraph->Alignment = taRightJustify;}

//—————————————————————————————————————;

void __fastcall TForm1: MCenterClick (TObject *Sender)

{MCenter->Checked = true;

RichEdit1->Paragraph->Alignment = taCenter;}

//—————————————————————————————————————;

void __fastcall TForm1: FormCreate (TObject *Sender)

{RichEdit1->Paragraph->FirstIndent = 0;

RichEdit1->Paragraph->LeftIndent = - RichEdit1->Paragraph->FirstIndent;

RichEdit1->Modified = false;}

//—————————————————————————————————————;

void __fastcall TForm1: DisplayHint (TObject *Sender)

{}

//—————————————————————————————————————;

void __fastcall TForm1: StatusExecute (TObject *Sender)

{

StatusBar1->Panels->Items[0]->Text =

IntToStr ((int)RichEdit1->CaretPos.y+1) +

": «+IntToStr ((int)RichEdit1->CaretPos.x+1);

if (RichEdit1->Modified)

StatusBar1->Panels->Items[1]->Text = «модиф.» ;

else StatusBar1->Panels->Items[1]->Text = «» ;

switch (RichEdit1->Paragraph->Alignment)

{

case taLeftJustify: TBLeft->Down = true;

break;

case taCenter: TBCenter->Down = true;

break;

case taRightJustify: TBRight->Down = true;

break; }}

//—————————————————————————————————————;

void __fastcall TForm1: RichEdit1KeyUp (TObject *Sender, WORD &Key,

TShiftState Shift)

{

StatusExecute (Sender);

}

//—————————————————————————————————————;

void __fastcall TForm1: RichEdit1MouseUp (TObject *Sender,

TMouseButton Button, TShiftState Shift, int X, int Y)

{

StatusExecute (Sender);

}

//—————————————————————————————————————;

void __fastcall TForm1: FormResize (TObject *Sender)

{StatusExecute (Sender);}

//—————————————————————————————————————;

void __fastcall TForm1: MSaveClick (TObject *Sender)

{if (FName ≠ «»)

RichEdit1->Lines->SaveToFile (FName);

else MSaveAsClick (Sender);}

//—————————————————————————————————————;

void __fastcall TForm1: FontDialog1Apply (TObject *Sender, HWND Wnd)

{RichEdit1->SelAttributes->Assign (FontDialog1->Font);}

//—————————————————————————————————————;

void __fastcall TForm1: MFindClick (TObject *Sender)

{ FindDialog1->FindText = RichEdit1->SelText;

FindDialog1->Execute ();

}

//—————————————————————————————————————;

void __fastcall TForm1: FindDialog1Find (TObject *Sender)

{

int FoundAt, StartPos, ToEnd;

TSearchTypes Option;

TReplaceDialog *dlg = (TReplaceDialog *)Sender;

if (dlg->Options.Contains (frWholeWord))

Option << stWholeWord;

else Option >> stWholeWord;

if (dlg->Options.Contains (frMatchCase))

Option << stMatchCase;

else Option >> stMatchCase;

FoundAt = RichEdit1->FindText (dlg->FindText,

StartPos, ToEnd, Option);

if (FoundAt ≠ -1)

{ RichEdit1->SelStart = FoundAt;

RichEdit1->SelLength = dlg->FindText.Length ();

if ((dlg->Name == «ReplaceDialog1»)&&(dlg->Options.Contains (frReplaceAll)))

ReplaceDialog1Replace (Sender);}

else ShowMessage («Текст '» + dlg->FindText +

" ' не найден");

RichEdit1->SetFocus ();}

//—————————————————————————————————————;

void __fastcall TForm1: MCopyClick (TObject *Sender)

{RichEdit1->CopyToClipboard ();}

//—————————————————————————————————————;

void __fastcall TForm1: MCutClick (TObject *Sender)

{RichEdit1->CutToClipboard ();}

//—————————————————————————————————————;

void __fastcall TForm1: MPasteClick (TObject *Sender)

{RichEdit1->PasteFromClipboard ();}

//—————————————————————————————————————;

void __fastcall TForm1: MUndoClick (TObject *Sender)

{RichEdit1->Undo ();}

//—————————————————————————————————————;

void __fastcall TForm1: ReplaceDialog1Replace (TObject *Sender)

{ RichEdit1->SetFocus ();

if (RichEdit1->SelText ≠ «»)

{RichEdit1->SelText = ReplaceDialog1->ReplaceText;

if (ReplaceDialog1->Options.Contains (frReplaceAll))

RichEdit1->SelStart += ReplaceDialog1->ReplaceText.Length ();}

else if (ReplaceDialog1->Options.Contains (frReplace))

{ShowMessage («Текст '» + ReplaceDialog1->FindText +

" ' не найден");

return;}

if (ReplaceDialog1->Options.Contains (frReplaceAll))

FindDialog1Find (Sender);}

//—————————————————————————————————————;

void __fastcall TForm1: MReplaceClick (TObject *Sender)

{ ReplaceDialog1->FindText = RichEdit1->SelText;

ReplaceDialog1->Execute ();}

//—————————————————————————————————————;

void __fastcall TForm1: MExitClick (TObject *Sender)

{Close ();}

//—————————————————————————————————————;

void __fastcall TForm1: FormCloseQuery (TObject *Sender, bool &CanClose)

{if (RichEdit1->Modified)

{int res = MessageDlg («Текст в окне был изменен. Сохранить его?» ,

mtConfirmation,

TMsgDlgButtons () << mbYes<< mbNo << mbCancel, 0);

switch (res)

{case mrYes: MSaveClick (Sender);break;

case mrCancel: CanClose = false; }}}

//—————————————————————————————————————;

void __fastcall TForm1: MCreateClick (TObject *Sender)

{if (RichEdit1->Modified)

{int res = MessageDlg («Текст в окне был изменен. Сохранить его?» ,

mtConfirmation,

TMsgDlgButtons () << mbYes<< mbNo << mbCancel, 0);

switch (res)

{

case mrYes: MSaveClick (Sender);

break;

case mrCancel: return;

}

}

RichEdit1->Clear ();

FName = «» ;

}

//—————————————————————————————————————;

void __fastcall TForm1: MPrintSetupClick (TObject *Sender)

{

PrinterSetupDialog1->Execute ();

}

//—————————————————————————————————————;

void __fastcall TForm1: MPrintClick (TObject *Sender)

{

if (PrintDialog1->Execute ())

for (int i = 1; i <= PrintDialog1->Copies; i++)

RichEdit1->Print («Печать PRichEdit1»);

}

void __fastcall TForm1: ApplicationEvents1Hint (TObject *Sender)

{

StatusBar1->Panels->Items[2]->Text = Application->Hint;

}

Практична робота 9. «Програми для роботи з власними функціями»

Завдання 9.1

Написати програму з використання функції, яка визначає яке з двох введених чисел має максимальну суму чисел.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

int f1(int num1)

{

int sum1=0,sum2=0;

do

{

sum1+=num1%10;

num1=num1/10;

// cout<<" sum1="<<" n" ;

}

while ((num1)>=1);

return sum1;

}

int _tmain (int argc, _TCHAR* argv[])

{

int first_num=0,second_num=0,s1=0,s2=0;

cout<<" first_num=";

cin>>first_num;

cout<<" second_num=";

cin>>second_num;

s1=f1(first_num);

s2=f1(second_num);

//bolean=f1(first_num, second_nim);

if (s1

{ cout<<" first sum is less then secondn" ;}

else

{cout<<" first sum is more then secondn" ;}

system («pause»);

return 0;

}

Завдання 9.2

Є три стержня з номерами 1, 2,3. На першому стержні є n дисків різного діаметра, які утворюють піраміду. Написати програму переміщень дисків зі стержня 1 на стержень 2, використовуючи допоміжний стержень 3. Диск більшого діаметру не повинен переміщатися на диск меньшого.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include «conio.h»

// int n=0;

//cin>>n;

int _tmain (int argc, _TCHAR* argv[])

{

int n=0,i=0,j, l=0,per=0;

cin>>n;

int mas1[100];

int mas2[100];

int mas3[100];

for (i=0,j=0;i

//for (int j=0;j

{

//randomize;

mas1[i]=j;

cout<<<" «;

}

cout<

for (l=0;l

{

mas3[l]=mas1[(n-1)-l];

cout<<<" «; per++;

} cout<

mas2[0]=mas1[0]; per++;

cout<<<" «;

for (i=1,j=n-2;i

{ mas2[i]=mas3[j];

cout<<<" «;

per++;

} cout<<" per="<

system («pause»);

return 0;

}

Практична робота 10. «Програми для роботи зі структурами даних»

Завдання 10.1

Використовуючи масив типу структура (з 6−10 елементів) скласти програму, за допомогою якої можна ввести у пам’ять комп’ютера дані з предметної області «Продовольчий магазин» і відібрати товари, вартість яких меньша 10 грн. В кожній предметній області мають бути присутні обчислювальні поля.

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include «string.h»

#include «stdlib.h»

struct str

{ double data;

char product_name[10];

double price;

int id_num;

char seller[10];

double tax;

}strc[10];

int _tmain (int argc, _TCHAR* argv[])

{

str strc[10];

int mas[100], j=0;

int n=0;

cout<<" n=";

cin>>n;

for (int i = 0; i

{

randomize;

strc[i]. data=rand ()%30;

cout<<" strc. product_name[" <<" ]=";

cin>>strc[i]. product_name;

cout<<" strc. price[" <<" ]=";

cin>>strc[i]. price;

if (strc[i]. price<10)

{

mas[j]=i;j++;

}

strc[i]. id_num = rand ()%100;

strcpy (strc[i]. seller," seller");

strc[i]. tax=20*(strc[i].price/100);

} cout<

for (int l = 0;l

{ cout<<" data" <<<" «;

cout<<" product_name[" <<" ]="<<<" «;

cout<<" price="<<<" «;

cout<<" id="<<<" «;

cout<<" seller="<<<" «;

cout<<" tax="<<<" «;

cout<

}

system («pause»);

return 0;

}

Практична робота 11. «Програми для роботи з файлами»

Завдання 11.1

Модифікувати програму завдання 1 практичної роботи 6 таким чином, щоб значення зчитувалися з текстового файлу, а результат обчислень записувався у файл. (Реалізувати два варіанти роботи з файлами, за допомогою компонентів вкладки Dialogs (візуальний режим роботи програми) та, а допомогою директив ifstream. h, ofstream. h (консольний режим роботи програми)).

Візуальний режим роботи програми:

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{ Memo1->Clear ();

if (OpenDialog1 -> Execute ())Memo1->Lines->LoadFromFile (OpenDialog1->FileName) ;

}

//—————————————————————————————————————;

void __fastcall TForm1: Button2Click (TObject *Sender)

{

int n, i=0,j=0;

n = Memo1->Lines->Count;

Memo2->Clear ();

for (i = 0; i

{

if (Memo1->Lines->Strings[i]=="0″)

{j++;}

else

{ Memo2->Lines->Add (Memo1->Lines->Strings[i]);}

}

for (i=0;i

{ Memo2->Lines->Add (0);}

}

//—————————————————————————————————————;

void __fastcall TForm1: Button3Click (TObject *Sender)

{

if (SaveDialog1 -> Execute ())Memo2->Lines->SaveToFile (SaveDialog1->FileName);

}

//—————————————————————————————————————;

Консольнй режим:

#pragma hdrstop

#pragma argsused

#ifdef _WIN32

#include

#else

typedef char _TCHAR;

#define _tmain main

#endif

#include

#include «iostream.h»

#include

int _tmain (int argc, _TCHAR* argv[])

{

int n=0,i=0,j=0;

//float a;

int *mas = new int[100];

fstream F;

F.open («D:\input.txt»);

if (F)

{

while (!F.eof ())

{

F>>mas[i];

i++;

} n=—i;

F.close ();

fstream fl (ios_base:trunc);

fl.open («D:\output.txt», ios_base:app);

for (i=0;i<=n;i++)

{

if (mas[i]≠0)

{fl<

fl<<" «;}

else j++;

}

while (j≠0)

{fl<<0;j—;}

fl.close ();

}

else cout<<" fale is missed «<

return 0;

}

Практична робота 12. «Програми для роботи з графічної підсистемою»

Задання 12.1

Користуючись компонентами мови програмування С++ написати програму для виведення на екран наступних фігур.

Розміри: Фігура 1 =101, Фігура 2 = 87, Фігура 3 = 89, Координати Х, У=30,50.

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{

double a = 101;

double x =50;

double y =30;

PaintBox2 -> Repaint ();

PaintBox3 -> Repaint ();

PaintBox1 -> Canvas-> Rectangle (x, y, a+x, a+y);

PaintBox1 -> Canvas-> MoveTo (x, y);

PaintBox1 -> Canvas-> LineTo (a+x, a+y);

PaintBox1 -> Canvas-> MoveTo (a+x, y);

PaintBox1 -> Canvas-> LineTo (a-x, a+y);

PaintBox1 -> Canvas-> MoveTo ((a/2)+x, y);

PaintBox1 -> Canvas-> LineTo ((a/2)+x, a+y);

PaintBox1 -> Canvas-> MoveTo (a+x,(a/2)+y);

PaintBox1 -> Canvas-> LineTo (x,(a/2)+y);

}

//—————————————————————————————————————;

void __fastcall TForm1: Button2Click (TObject *Sender)

{

double a = 87;

double b =a/3;

double x =50;

double y =30;

PaintBox1 -> Repaint ();

PaintBox3 -> Repaint ();

PaintBox2 -> Canvas-> MoveTo (x,(a/4)+y);

PaintBox2 -> Canvas-> LineTo (b+x,(a/4)+y);

PaintBox2 -> Canvas-> MoveTo (x,(a/2)+y);

PaintBox2 -> Canvas-> LineTo (b+x,(a/2)+y);

PaintBox2 -> Canvas-> MoveTo (x,(a*0.75)+y);

PaintBox2 -> Canvas-> LineTo (b+x,(a*0.75)+y);

PaintBox2 -> Canvas-> Rectangle (b+x, y, b*2+x, a+y);

PaintBox2 -> Canvas-> MoveTo (b*2+x,(a/2)+y);

PaintBox2 -> Canvas-> LineTo (a+x,(a/2)+y);

}

//—————————————————————————————————————;

void __fastcall TForm1: Button3Click (TObject *Sender)

{double a =89;

double x =50;

double y =30;

PaintBox1 -> Repaint ();

PaintBox2 -> Repaint ();

PaintBox3 -> Canvas-> MoveTo (x,(a/4)+y);

PaintBox3 -> Canvas-> LineTo (x+(a/3),(a/4)+y);

PaintBox3 -> Canvas-> MoveTo (x+(2*a/3),(a/4)+y);

PaintBox3 -> Canvas-> LineTo (x+a,(a/4)+y);

PaintBox3 -> Canvas-> MoveTo (x+(a/3), y);

PaintBox3 -> Canvas-> LineTo (x+(a/3),(a/2)+y);

PaintBox3 -> Canvas-> MoveTo (x+(2*a/3), y);

PaintBox3 -> Canvas-> LineTo (x+(2*a/3),(a/2)+y);

}

//—————————————————————————————————————;

Завдання 12.2

Підготувати програму на мові С++ для виведення на екран двох рядків тексту:

Software development

Рядки вказаного тексту надрукувати двома гарнітурами, для кожної з яких задати два різних кеглі з наступними кутами нахилу відносно горизонтальної вісі: 00, 900 .

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{

PaintBox1 -> Canvas -> Rectangle (0,0,200,100);

PaintBox1 -> Canvas -> Font -> Size = 10;

PaintBox1 -> Canvas -> Font -> Name= «Arial» ;

PaintBox1 -> Canvas -> TextOutW (2,2," Software development");

PaintBox1 -> Canvas -> Font -> Size = 15;

PaintBox1 -> Canvas -> Font -> Name= «Times New Roman» ;

PaintBox1 -> Canvas -> TextOutW (2,22," Zhideikina Nata");

}

//—————————————————————————————————————;

Завдання 12.3

Написати програму для побудови на екрані наступних фігур:

#include

#pragma hdrstop

#define PI 3.1 415 926 535 897 932

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{double a = 50;

PaintBox1 -> Canvas ->MoveTo (100,100);

PaintBox1 -> Canvas ->LineTo (100-a*sin (36*PI/180), 100-a*cos (36*PI/180));

PaintBox1 -> Canvas ->LineTo (100-a*sin (36*PI/180)+a*sin (72*PI/180), 100-a*cos (36*PI/180)-a*cos (72*PI/180));

PaintBox1 -> Canvas ->LineTo (100+a+a*sin (36*PI/180), 100-a*cos (36*PI/180));

PaintBox1 -> Canvas ->MoveTo (100,100);

PaintBox1 -> Canvas ->LineTo (100+a, 100);

PaintBox1 -> Canvas ->LineTo (100+a+a*sin (36*PI/180), 100-a*cos (36*PI/180));

PaintBox1 -> Canvas ->LineTo (100+a+a*sin (36*PI/180)+a*sin (36*PI/180), 100-a*cos (36*PI/180)+a*cos (18*PI/180));

PaintBox1 -> Canvas ->LineTo (100+a+(a*sin (18*PI/180))+a*sin (72*PI/180), 100+a*(cos (18*PI/180))+a*cos (72*PI/180));

PaintBox1 -> Canvas ->MoveTo (100+a, 100);

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180)), 100+a*(cos (18*PI/180)));

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))+a*sin (72*PI/180), 100+a*(cos (18*PI/180))+a*cos (72*PI/180));

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))+a*sin (72*PI/180)-a*sin (36*PI/180), 100+a*(cos (18*PI/180))+a*cos (72*PI/180)+a*cos (36*PI/180));

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))-(a*cos (36*PI/180)), 100+a*(cos (18*PI/180))+(a*sin (36*PI/180))+a);

PaintBox1 -> Canvas -> MoveTo (100+a+(a*sin (18*PI/180)), 100+a*(cos (18*PI/180)));

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))-(a*cos (36*PI/180)), 100+a*(cos (18*PI/180))+(a*sin (36*PI/180)));

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))-(a*cos (36*PI/180)), 100+a*(cos (18*PI/180))+(a*sin (36*PI/180))+a);

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))-(a*cos (36*PI/180))-a*cos (18*PI/180), 100+a*(cos (18*PI/180))+(a*sin (36*PI/180))+a-a*sin (18*PI/180));

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))-2*(a*cos (36*PI/180))-a*sin (72*PI/180), 100+a*(cos (18*PI/180))+a*cos (72*PI/180));

PaintBox1 -> Canvas -> MoveTo (100+a+(a*sin (18*PI/180))-(a*cos (36*PI/180)), 100+a*(cos (18*PI/180))+(a*sin (36*PI/180)));

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))-2*(a*cos (36*PI/180)), 100+a*(cos (18*PI/180)));

PaintBox1 -> Canvas -> LineTo (100+a+(a*sin (18*PI/180))-2*(a*cos (36*PI/180))-a*sin (72*PI/180), 100+a*(cos (18*PI/180))+a*cos (72*PI/180));

PaintBox1 -> Canvas -> LineTo (100-a*sin (36*PI/180)-a*sin (36*PI/180), 100-a*cos (36*PI/180)+a*cos (18*PI/180));

PaintBox1 -> Canvas -> LineTo (100-a*sin (36*PI/180), 100-a*cos (36*PI/180));

PaintBox1 -> Canvas -> MoveTo (100+a+(a*sin (18*PI/180))-2*(a*cos (36*PI/180)), 100+a*(cos (18*PI/180)));

PaintBox1 -> Canvas -> LineTo (100,100);}

//—————————————————————————————————————;

Практична робота 13. «Програми для роботи з глобальними ідентифікаторами Screen, Mouse, Application»

Завдання 13.1

Створити застосування, яке:

Користуючись глобальним об'єктом Screen при своєму завантаженні використовуватиме перевірку розміра екрана монітору і при перевищені формою цього розміру автоматично прирівнюватиме до нього, а також виводитиме у компонент ComboBox1 список всіх шрифтів даного комп’ютера.

Користуючись глобальним об'єктом Mouse у StatusBar виводити поточні координати курсора миші відносно форми та екрану, а також при натисканні на кнопку використовуватиме реверсну зміну кнопок миші.

Користуючись властивостями компоненту ApplicationEvents при наведені мишею на будь-якийкомпонент на формі у StatusBar виводився текст підказки закладений у властивість Hint кожного компонента.

При натисненні клавіші Num Lock, Caps Lock та Insert вивести у Statusbar стан кнопок.

//—————————————————————————————————————;

#include

#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)

{

this->Width = this->Width > Screen->Width? Screen->Width: this->Width;

this->Height = this->Height > Screen->Height? Screen->Height: this->Height;

ComboBox1->Items->Assign (Screen->Fonts);

}

//—————————————————————————————————————;

void __fastcall TForm1: FormMouseMove (TObject *Sender, TShiftState Shift, int X, int Y)

{POINT pos;

GetCursorPos (&pos);

StatusBar1->Panels->Items[0]->Text = «Экран: x=» + FloatToStr (pos.x) + «y=» + FloatToStr (pos.y);

StatusBar1->Panels->Items[1]->Text = «nФорма: x=» + FloatToStr (pos.x-Left) +

" y=" + FloatToStr (pos.y-Top);

}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{

static bool b (false);

SwapMouseButton (b = !b);

}

//—————————————————————————————————————;

void __fastcall TForm1: ApplicationEvents1ActionExecute (TBasicAction *Action, bool &Handled)

{ StatusBar1->Panels->Items[2]->Text = Application->Hint;}

//—————————————————————————————————————;

void __fastcall TForm1: FormKeyUp (TObject *Sender, WORD &Key, TShiftState Shift)

{

switch (Key)

{

case VK_CAPITAL:

StatusBar1->Panels->Items[3]->Text = (:GetKeyState (VK_CAPITAL))? «CapsLock»: «bbb» ;

break;

case VK_NUMLOCK:

StatusBar1->Panels->Items[3]->Text = (:GetKeyState (VK_NUMLOCK))? «NumLock»: «bbb» ;

break;

case VK_SCROLL:

StatusBar1->Panels->Items[3]->Text = (:GetKeyState (VK_SCROLL))? «ScrollLock»: «bbb» ;

break;

}

}

//—————————————————————————————————————;

Практична робота 14. «Програми для роботи зі стандартними діалоговими компонентами»

Завдання 14.1

За допомогою компонентів FontDialog, PrintDialog, PrintSetupDialog реалізувати підтримку форматованого тексту в компоненті RichEdit з можливістю друку його вмісту.

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{}

//—————————————————————————————————————;

void __fastcall TForm1: N1Click (TObject *Sender)

{ if (PrintDialog1->Execute ()) {

Printer ()->BeginDoc ();

for (int i = 0;iLines->Count;i++)

Printer ()->Canvas->TextOut (100,100+(RichEdit1->Font->Size+80)*i, RichEdit1->Lines->Strings[0]) ;

Printer ()->EndDoc (); }}

//—————————————————————————————————————;

void __fastcall TForm1: N3Click (TObject *Sender)

{

PrinterSetupDialog1->Execute ();

}

//—————————————————————————————————————;

void __fastcall TForm1: N2Click (TObject *Sender)

{

if (FontDialog1 -> Execute ()) RichEdit1->Font = FontDialog1->Font ;

}

//—————————————————————————————————————;

програма керування інтерфейс ідентифікатор Практична робота 15. «Програма для роботи з аудіота відеофайлами»

Завдання 15.1

Створити застосування, яке програватиме аудіота відеофайли. Файли завантажуються в програму за допомогою компонента TOpenDialog.

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{

MediaPlayer1->Close ();

if (OpenDialog1->Execute ()) {

MediaPlayer1->FileName = OpenDialog1->FileName;

MediaPlayer1->Open ();

MediaPlayer1->Display=Panel1;

MediaPlayer1->Play ();

} }

//—————————————————————————————————————;

Показати весь текст
Заповнити форму поточною роботою