Создание приложений с использованием различных компонентов
Создание приложения: Текстовый редактор. Размещаем на форме 2 GroupBox, 4 Edit, 2 Button, 4 Label. На форму с паролем размещаем Edit, Button, Label. StaticText1→Caption = «Введите количество строк»; OpenDialog1→Execute (); //вызов окна открытия файла. Создание приложения: Одномерный массив. Timer1→Interval = 100; // интервал = 100 миллисекунд. Timer1→Interval = 100; // интервал = 100… Читать ещё >
Создание приложений с использованием различных компонентов (реферат, курсовая, диплом, контрольная)
Лабораторная работа № 1
Тема: создание приложений с использованием различных компонентов Цель: Научиться создавать приложения, используя различные компоненты Ход работы
1. Создание приложения: ProgressBar
— Размещаем на форме 3 компонента ProgressBar, 7 CGauge, 1 Button, 2 Timer.
— Создаем следующие обработчики событий:
void __fastcall TForm1: Timer1Timer (TObject *Sender)
{
ProgressBar1->StepIt (); // смещаем позицию прогрессбара
if (ProgressBar1->Position == ProgressBar1->Max)
{
ProgressBar1->Position =ProgressBar1-> Min;
Timer1->Enabled = false;
}
}
//—————————————————————————————————————;
void __fastcall TForm1: Button1Click (TObject *Sender)
{
ProgressBar1->Position = 0; // позицию на ноль
ProgressBar1->Max = 100; // правая граница
Timer1->Interval = 100; // интервал = 100 миллисекунд
Timer1->Enabled = true; // включаем таймер
ProgressBar2->Position = 0; // позицию на ноль
ProgressBar2->Max = 100; // правая граница
Timer1->Interval = 100; // интервал = 100 миллисекунд
Timer2->Enabled = true; // включаем таймер
for (int g=0;g<=100;g++)
{ CGauge1->Progress=g;
CGauge3->Progress=g;
CGauge4->Progress=g;
CGauge5->Progress=g;
Sleep (25); // Делаем задержку
}
for (int g=0;g<=100;g++)
{ CGauge6->Progress=g;
CGauge7->Progress=g;
Sleep (25); // Делаем задержку
}
for (int g=0;g<=100;g++)
{ CGauge2->Progress=g;
Sleep (25); // Делаем задержку
}
}
//—————————————————————————————————————;
void __fastcall TForm1: Timer2Timer (TObject *Sender)
{
if (Timer1->Enabled == false)
{ProgressBar2->StepIt (); // смещаем позицию прогрессбара
if (ProgressBar2->Position == ProgressBar2->Max)
{
ProgressBar2->Position =ProgressBar2-> Min;
Timer2->Enabled = false; }
ProgressBar4->StepIt (); // смещаем позицию прогрессбара
if (ProgressBar4->Position == ProgressBar4->Max)
{
ProgressBar4->Position =ProgressBar4-> Min;
Timer2->Enabled = false; }
}
}
— Готовое приложение:
2. Создание приложения: Вычисление по формуле
— Размещаем на форме 2 Button, 1 ComboBox, 4 Edit, 1 Image, 5 Label
— Задаем следующие свойства объектам: ComboBox — Items
Сумма (2X+cos2(Y)+10)
Сумма (4Y2−2X)
Произведение ((X+1)*(Y-log (X))
Произведение (sinY-|x|)
Picture
Image — Выбираем картинку
— Создаем следующие обработчики событий:
Кнопка «Вычислить»:
void __fastcall TForm1: Button1Click (TObject *Sender)
{
int n, k, x, y, n1, i;
x= StrToInt (Edit1-> Text);
y= StrToInt (Edit4-> Text);
n= StrToInt (Edit2-> Text);
n1 = ComboBox1-> ItemIndex;
switch (n1)
{ case 0:
{ k=0; for (i=0;i
case 1:
{ k=0; for (i=0;i
case 2:
{ k=1; for (i=0;i
case 3:
{ k=1; for (i=0;i
}
Edit3-> Text = IntToStr (k);
}
//—————————————————————————————————————;
Кнопка «Выход»:
void __fastcall TForm1: Button2Click (TObject *Sender)
{
Close ();
}
— Готовое приложение:
3. Создание приложения: Двумерный массив
— Размещаем на форме 2 компонента Button, 3 Label, 1 StaticText, 1 StringGrid, 1 SpinEdit, 1 Edit, 1 UpDown, 1 GroupBox, 4 CheckBox/
— Создаем следующие обработчики событий:
— Задаем компонентам CheckBox следующие значения свойств Caption:
Максимальный элемент Минимальный элемент Сумма:
Кнопка Создания пустого массива.
void __fastcall TForm1: Button1Click (TObject *Sender)
{
int i, j;
for (i = 0; i ColCount; i++)
for (j = 0; j RowCount; j++)
StringGrid1->Cells[i][j]="" ;
if (StrToInt (Edit1-> Text)<=0)
StaticText1->Caption = «Введите количество столбцов» ;
if (StrToInt (CSpinEdit1-> Text)<=0)
StaticText1->Caption = «Введите количество строк» ;
if ((StrToInt (Edit1-> Text)≠0) && (StrToInt (CSpinEdit1-> Text)≠0))
{StaticText1->Caption = «Заполните массив целыми числами» ;
StringGrid1-> ColCount = StrToInt (Edit1-> Text);
StringGrid1-> RowCount = StrToInt (CSpinEdit1-> Text);}
}
//—————————————————————————————————————;
Кнопка Поиска элементов
void __fastcall TForm1: Button2Click (TObject *Sender)
{
int i, j, n; int max, min, s=0,p=1;
ListBox1->Clear ();
max = StrToInt (StringGrid1-> Cells [0]);
min = StrToInt (StringGrid1-> Cells [0]);
for (i = 0; i ColCount; i++)
for (j = 0; j RowCount; j++)
{ if (max Cells [i] [j]))
max=StrToInt (StringGrid1->Cells[i][j]);
if (min >StrToInt (StringGrid1-> Cells [i] [j]))
min=StrToInt (StringGrid1->Cells[i][j]);
s+= StrToInt (StringGrid1->Cells[i][j]);
p*= StrToInt (StringGrid1->Cells[i][j]);
}
if (CheckBox1->Checked) ListBox1->Items->Add («Максимальный элемент: «+ IntToStr (max));
if (CheckBox2->Checked) ListBox1->Items->Add («Минимальный элемент: «+ IntToStr (min));
if (CheckBox3->Checked) ListBox1->Items->Add («Сумма: «+ IntToStr (s));
if (CheckBox4->Checked) ListBox1->Items->Add («Произведение: «+ IntToStr (p));
}
— Готовое приложение:
4. Создание приложения: Калькулятор
— Размещаем на форме 2 компонентаTrackBar, 7 Label
— Задаем свойства для TrackBar:
Min — 1, Max — 1000
— Создаем следующие обработчики событий:
void __fastcall TForm1: TrackBar1Change (TObject *Sender)
{
Label1->Caption=IntToStr (TrackBar1->Position);
Label3->Caption=IntToStr (TrackBar1->Position*TrackBar2->Position);
Label4->Caption=IntToStr (TrackBar1->Position+TrackBar2->Position);
Label6->Caption=IntToStr (TrackBar1->Position-TrackBar2->Position);
}
//—————————————————————————————————————;
void __fastcall TForm1: TrackBar2Change (TObject *Sender)
{
Label2->Caption=IntToStr (TrackBar2->Position);
Label3->Caption=IntToStr (TrackBar1->Position*TrackBar2->Position);
Label4->Caption=IntToStr (TrackBar1->Position+TrackBar2->Position);
Label6->Caption=IntToStr (TrackBar1->Position-TrackBar2->Position);
}
— Готовое приложение:
5. Создание приложения: Медиа-плеер
— Размещаем на форме 2 компонента Label, 1 MediaPlayer, 1 OpenDialog, 2 Button.
— Создаем следующие обработчики событий:
Кнопка открытия файла:
void __fastcall TForm1: Button1Click (TObject *Sender)
{
OpenDialog1->Execute (); //вызов окна открытия файла
MediaPlayer1->Close (); //закрытие файла
//передача имени файла из окна общего диалога проигрывателю
MediaPlayer1->FileName = OpenDialog1->FileName;
MediaPlayer1->Open (); //открытие файла
Label1->Caption = MediaPlayer1->FileName;
}
//—————————————————————————————————————;
Кнопка выхода
void __fastcall TForm1: Button2Click (TObject *Sender)
{
Close ();
}
Готовое приложение:
приложение ввод событие редактор
6. Создание приложения: Одномерный массив
— Размещаем на форме 2 GroupBox, 4 Edit, 2 Button, 4 Label .
— Создаем следующие обработчики событий:
Кнопка добавления числа в массив и вычисления суммы:
int m[100];
int i=0,n;
void __fastcall TForm1: Button1Click (TObject *Sender)
{
n=StrToInt (Edit4->Text);
Edit2->Clear ();
m[i]=StrToInt (Edit1->Text);
i++;
for (int i=0;i
Edit2->Text=Edit2->Text+" «+IntToStr (m[i]);
int s=0;
for (int i=0;i<10;i++)s+=m[i];
Edit3->Text=IntToStr (s);
Edit1->SetFocus () ;
}
//—————————————————————————————————————;
Кнопка «Очистить»
void __fastcall TForm1: Button2Click (TObject *Sender)
{
for (int j=0;j<100;j++)
m[j]=0;
Edit1->Clear ();
Edit2->Clear ();
Edit3->Clear ();
Edit4->Clear ();
Edit4->SetFocus ();
i=0;
}
— Готовое приложение:
7. Создание приложения: Список
— Размещаем на форме 4 Button, 2 Edit, 1 Label, 1 ListBox, 1 RadioGroup
— Задаем св-во Items для RadioGroup:
Макс.
Мин.
Сумму Произв.
— Создаем следующие обработчики событий:
Кнопка добавления числа в список:
int n=0;
void __fastcall TForm1: Button1Click (TObject *Sender)
{
if (! (Edit1-> Text == «»))
{
ListBox1-> Items-> Add (Edit1-> Text);
Edit1-> Text = «» ;
n++;
Edit1->SetFocus ();
}
}
//—————————————————————————————————————;
Кнопка очищения:
void __fastcall TForm1: Button2Click (TObject *Sender)
{
if (! (ListBox1-> ItemIndex == -1))
ListBox1-> Items-> Delete (ListBox1-> ItemIndex);
}
//—————————————————————————————————————;
Кнопка выход
void __fastcall TForm1: Button3Click (TObject *Sender)
{
Close ();
}
//—————————————————————————————————————;
Кнопка поиска из списка
void __fastcall TForm1: Button4Click (TObject *Sender)
{
int i, max, min, s, p;
if (RadioGroup1->ItemIndex == 0) {
max = StrToInt (ListBox1->Items->Strings [0]);
for (i=1;i
if (StrToInt (ListBox1->Items->Strings [i])>max) max= StrToInt (ListBox1->Items->Strings [i]);
Edit2->Text = IntToStr (max); }
if (RadioGroup1->ItemIndex == 1) {
min = StrToInt (ListBox1->Items->Strings [0]);
for (i=1;i
if (StrToInt (ListBox1->Items->Strings [i])Items->Strings [i]);
Edit2->Text = IntToStr (min); }
if (RadioGroup1->ItemIndex == 2) {
s=0;
for (i=1;i
s+=StrToInt (ListBox1->Items->Strings [i]);
Edit2->Text = IntToStr (s); }
if (RadioGroup1->ItemIndex == 3) {
p=1;
for (i=1;i
p*=StrToInt (ListBox1->Items->Strings [i]);
Edit2->Text = IntToStr (p); }
}
— Готовое приложение
8. Создание приложения: Текстовый редактор
— Размещаем на форме 1 ToolBar, 1 StatusBar, 1 OpenDialog, 1 FontDialog, 1 ActionList, 1 RichEdit, 1 SaveDialog
— Обработчики событий:
void __fastcall TForm1: FileNewExecute (TObject *Sender)
{
RichEdit1->Clear ();
FileName = «Untitled.txt» ;
StatusBar1->Panels->Items[0]->Text = FileName;
}
//—————————————————————————————————————;
void __fastcall TForm1: FileOpenExecute (TObject *Sender)
{
if (OpenDialog1->Execute ())
{
RichEdit1->Lines->LoadFromFile (OpenDialog1->FileName);
FileName = OpenDialog1->FileName;
StatusBar1->Panels->Items[0]->Text = FileName;
}}
//—————————————————————————————————————;
void __fastcall TForm1: FileSaveAsExecute (TObject *Sender)
{
SaveDialog1->FileName = FileName;
SaveDialog1->InitialDir = ExtractFilePath (FileName);
if (SaveDialog1->Execute ())
{
RichEdit1->Lines->SaveToFile (SaveDialog1->FileName);
FileName = SaveDialog1->FileName;
StatusBar1->Panels->Items[0]->Text = FileName;
}
}
//—————————————————————————————————————;
void __fastcall TForm1: FileExitExecute (TObject *Sender)
{
Close ();
}
//—————————————————————————————————————;
void __fastcall TForm1: HelpAboutExecute (TObject *Sender)
{
AboutBox->ShowModal ();
}
//—————————————————————————————————————;
void __fastcall TForm1: FormCreate (TObject *Sender)
{
FileName = «Untitled.txt» ;
StatusBar1->Panels->Items[0]->Text = FileName;
RichEdit1->Clear ();
}
//—————————————————————————————————————;
void __fastcall TForm1: FileSaveExecute (TObject *Sender)
{
if (FileName == «Untitled.txt»)
FileSaveAsExecute (NULL);
else RichEdit1->Lines->SaveToFile (FileName);
}
//—————————————————————————————————————;
void __fastcall TForm1: ToolButton10Click (TObject *Sender)
{
FontDialog1->Font->Assign (RichEdit1->SelAttributes);
if (FontDialog1->Execute ()) RichEdit1->SelAttributes->Assign (FontDialog1->Font);
}
//—————————————————————————————————————;
void __fastcall TForm1: ToolButton11Click (TObject *Sender)
{
if (ColorDialog1->Execute ()) RichEdit1->Color=ColorDialog1->Color;
}
//—————————————————————————————————————;
void __fastcall TForm1: N1Click (TObject *Sender)
{
FontDialog1->Font->Assign (RichEdit1->SelAttributes);
if (FontDialog1->Execute ()) RichEdit1->SelAttributes->Assign (FontDialog1->Font);
}
//—————————————————————————————————————;
void __fastcall TForm1: N2Click (TObject *Sender)
{
if (ColorDialog1->Execute ()) RichEdit1->Color=ColorDialog1->Color;
}
— Готовое приложение:
9. Создание главного приложения
— Размещаем на форме 8 Button, 2 Label, 1 Timer, 1 Image
— Создаем еще 2 формы (для заставки и проверки пароля)
— На форму с заставкой размещаем Image, в св-ве формы BorderStyle — None, растягиваем Image на всю форму, ставим Timer, интервал — 5000 мс.
— На форму с паролем размещаем Edit, Button, Label
— Обработчик для кнопки ввода:
void __fastcall TForm3: Button1Click (TObject *Sender)
{
if (Edit1->Text≠"1″)
if (MessageBox (0," Пароль неверный" ,
" ERROR!!!", MB_OK)==IDOK)
Edit1->SetFocus () ;
if (Edit1->Text=="1″) Close ();
}
— Копируем .exe файлы приложений в папку с проектом.
— Обработчики событий:
void __fastcall TForm1: Timer1Timer (TObject *Sender)
{
Label1->Caption=Now ().TimeString ();
}
//—————————————————————————————————————;
void __fastcall TForm1: Button1Click (TObject *Sender)
{
WinExec («ProgressBar», 1);
}
//—————————————————————————————————————;
void __fastcall TForm1: Button2Click (TObject *Sender)
{
WinExec («Вычисление по формуле», 1);
}
//—————————————————————————————————————;
void __fastcall TForm1: Button3Click (TObject *Sender)
{
WinExec («Двумерный массив», 1);
}
//—————————————————————————————————————;
void __fastcall TForm1: Button4Click (TObject *Sender)
{
WinExec («Калькулятор», 1);
}
//—————————————————————————————————————;
void __fastcall TForm1: Button5Click (TObject *Sender)
{
WinExec («Медиа-плеер», 1);
}
//—————————————————————————————————————;
void __fastcall TForm1: Button6Click (TObject *Sender)
{
WinExec («Одномерный массив», 1);
}
//—————————————————————————————————————;
void __fastcall TForm1: Button7Click (TObject *Sender)
{
WinExec («Список», 1);
}
//—————————————————————————————————————;
void __fastcall TForm1: Button8Click (TObject *Sender)
{
WinExec («Текстовый редактор», 1);
}
//—————————————————————————————————————;
void __fastcall TForm1: FormCreate (TObject *Sender)
{
Form2=new TForm2(this);
Form2->ShowModal (); Form2->Free ();
Form3=new TForm3(this);
Form3->ShowModal (); Form3->Free ();
}
— Главное приложение:
Заставка:
Окно ввода пароля:
Главная форма: