Структура окна 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); |
| } |