Структура окна Object Inspector
Федеральное агентство связи
БФ ФГОБУ ВПО «СибГУТИ»
Практическая работа №3
По дисциплине:Основы программирования.
Тема: Основные свойства компонентов. Программа калькулятор.
Выполнил: Проверил:
Студент группы Преподаватель
Повт-241 Гусев.И.С Эрденеева.Л.И
Улан-Удэ.2015
Цель работы:Освоение методологии и принципов создания базовых стандартных элементов интерфейса WINDOWS-программы в среде визуального проектирования Builder C++.
Задание к лабораторной работе:1.Составить проект программы калькулятор, выполняющего четыре арифметических операции ( сложение, вычитание, умножение, деление). Предусмотреть блокировку деления на ноль с выводом соответствующего сообщения в окне результата.
Блок схема:
Начало |
Ввод a,znak,b |
znak |
a-b |
a+b |
ошибка! |
Конец |
a*b |
a/b |
f |
y= |
f=0 |
Ответы на контрольные вопросы:
Среда визуального программирования.
Builder C++.
Понятие событийного программирования.
парадигма программирования, в которой выполнение программы определяется событиями — действиями пользователя сообщениями других программ и потоков, событиями операционной системы
.
3. Событие ONClick.
Событие onclick возникает при щелчке левой кнопкой мыши на элементе, к которому добавлен атрибут onclick.
Структура окна Object Inspector
1: Properties-свойства;
Инспектор объектов отображает опубликованные свойства компонентов;
Свойств состоит из двух столбцов: левый содержит название свойств компонентов, а правый-их значение. Свойства могут быть прописными и комплексными. Комплексные свойства состоят из набора других свойств, такие свойства в инспекторе объектов обозначены знаком «+». Значение свойств перечисленного типа описываются комбинированным списком, из которого выбирают необходимое. Некоторые комплексные свойства используют диалоговые окна, набор управляющих элементов, которые зависят от конкретного свойства.
2: Events-события;
Страница событий инспектора объектов показывает список событий, распознаваемых компонентом ;
Закладка событий имеет два столбца: в левом отображается имена стандартных событий, на
Которые объект может реагировать и правый, в котором записаны имена методов реализующих реакцию на событие. Каждому стандартному событию отвечает название метода, который появляется после двойного щелчка мыши в правом столбце. В этот момент окно кода программы добовляетсяшоблон базовой фенкции в виде заголовка и фигурных скобок для соответствующего метода. Шаблон необходимо заполнить соответствующим текстом программы.
Окно программы:
Текст программы:
#include <vcl.h> |
#include <stdio.h> |
#include <math.h> |
#pragma hdrstop |
#include "Unit1.h" |
#pragma package(smart_init) |
#pragma resource "*.dfm" |
TForm1 *Form1; |
float a; |
char z; |
__fastcall TForm1::TForm1(TComponent* Owner) |
: TForm(Owner) |
{ |
} |
void __fastcall TForm1::Button7Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+1; |
} |
void __fastcall TForm1::Button8Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+2; |
} |
void __fastcall TForm1::Button9Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+3; |
} |
void __fastcall TForm1::Button4Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+4; |
} |
void __fastcall TForm1::Button5Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+5; |
} |
void __fastcall TForm1::Button6Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+6; |
} |
void __fastcall TForm1::Button1Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+7; |
} |
void __fastcall TForm1::Button2Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+8; |
} |
void __fastcall TForm1::Button3Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+9; |
} |
void __fastcall TForm1::Button15Click(TObject *Sender) |
{ |
Edit1->Text=""; |
} |
void __fastcall TForm1::Button10Click(TObject *Sender) |
{ |
Edit1->Text=Edit1->Text+0; |
} |
void __fastcall TForm1::Button13Click(TObject *Sender) |
{ |
a=StrToFloat(Edit1->Text); |
Edit1->Text=""; |
Edit1->SetFocus(); |
z='+'; |
} |
void __fastcall TForm1::Button14Click(TObject *Sender) |
{ |
a=StrToFloat(Edit1->Text); |
Edit1->Text=""; |
Edit1->SetFocus(); |
z='-'; |
} |
void __fastcall TForm1::Button17Click(TObject *Sender) |
{ |
a=StrToFloat(Edit1->Text); |
Edit1->Text=""; |
Edit1->SetFocus(); |
z='*'; |
} |
void __fastcall TForm1::Button16Click(TObject *Sender) |
{ |
a=StrToFloat(Edit1->Text); |
Edit1->Text=""; |
Edit1->SetFocus(); |
z='/'; |
} |
void __fastcall TForm1::Button12Click(TObject *Sender) |
{ |
float b,r; |
b=StrToFloat(Edit1->Text); |
switch(z) |
{ |
case '+':r=a+b;Edit1->Text=FloatToStr(r);break; |
case '*':r=a*b;Edit1->Text=FloatToStr(r);break; |
case '-':r=a-b;Edit1->Text=FloatToStr(r);break; |
case '/':r=a/b;Edit1->Text=FloatToStr(r);break; |
} |
} |
void __fastcall TForm1::Button18Click(TObject *Sender) |
{ |
Edit1->Text = Edit1->Text.Delete(Edit1->Text.Length(), 1); |
} |