37782

Ознайомлення з інструментальним середовищем програмування Delphi. Робота з простими візуальними об’єктами

Лабораторная работа

Информатика, кибернетика и программирование

Розробити проект, в якому на формі розмістити необхідні компоненти для введення координат вершин трикутника (TEdit, TLabel). Для виконання обчислень і завершення роботи програми використати компоненти TButton. Для вибору необхідного варіанту обчислень застосувати компонент RadioButton або TCheckBox. Результати обчислень виводити в компонент TLabel

Украинкский

2013-09-25

1.5 MB

4 чел.

5

Міністерство освіти і науки України

Хмельницький національний університет

Кафедра системного програмування

Лабораторна робота №3

з програмування

на тему:

«Ознайомлення з інструментальним середовищем програмування Delphi. Робота з простими візуальними об’єктами»

Виконав:

Студент групи КІ-10-1

Ноль М.Г.

Перевірив:

Мостовий С.В.

Хмельницький

2011

Лабораторна робота №3

Тема: Ознайомлення з інструментальним середовищем програмування Delphi. Робота з простими візуальними об’єктами.

Мета:ознайомитись з інструментальним середовищем програмування Delphi та його простими візуальними об’єктами.

Завдання

Розробити проект, в якому на формі розмістити необхідні компоненти для введення координат вершин трикутника (TEdit, TLabel). Для виконання обчислень і завершення роботи програми використати компоненти TButton. Для вибору необхідного варіанту обчислень застосувати компонент RadioButton або TCheckBox. Результати обчислень виводити в компонент TLabel. Для компонентів, які відображують результати роботи, заборонити можливість правки в компоненті. Забезпечити перевірку введених даних із видачею відповідного повідомлення та блокуванням компонентів форми у випадку некоректних даних.

Знайти кут A і медіану Мb.

Unit1.pas

unit Unit1;

{$mode objfpc}{$H+}

interface

uses

 Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,

 StdCtrls;

type

 { TForm1 }

 TForm1 = class(TForm)

   Button1: TButton;    Button2: TButton;    Button3: TButton;

   Edit1: TEdit;    Edit2: TEdit;    Edit3: TEdit;    Edit4: TEdit;    Edit5: TEdit;    Edit6: TEdit;

   Label1: TLabel;    Label2: TLabel;    Label3: TLabel;    Label4: TLabel;    Label5: TLabel;

   Label6: TLabel;    Label7: TLabel;

   RadioButton1: TRadioButton;    RadioButton2: TRadioButton;

   procedure Button1Click(Sender: TObject);

   procedure Button2Click(Sender: TObject);

   procedure Button3Click(Sender: TObject);

   procedure Edit1KeyPress(Sender: TObject; var Key: char);

   procedure Edit2KeyPress(Sender: TObject; var Key: char);

   procedure Edit3KeyPress(Sender: TObject; var Key: char);

   procedure Edit4KeyPress(Sender: TObject; var Key: char);

   procedure Edit5KeyPress(Sender: TObject; var Key: char);

   procedure Edit6KeyPress(Sender: TObject; var Key: char);

   procedure FormCreate(Sender: TObject);

 private

   { private declarations }

 public

   { public declarations }

 end;

var

 Form1: TForm1;

implementation

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);

begin

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

 Close;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

 Edit1.Clear;  Edit2.Clear;  Edit3.Clear;  Edit4.Clear;  Edit5.Clear;  Edit6.Clear;

 Label7.Caption:='Результат: '

end;

procedure TForm1.Button1Click(Sender: TObject);

var xa,xb,xc,ya,yb,yc,AB,BC,AC,Mb,A: real;

begin

if (Edit1.Text<>'') and (Edit2.Text<>'') and (Edit3.Text<>'') and (Edit4.Text<>'') and (Edit5.Text<>'') and (Edit6.Text<>'') then

     begin

     xa:=StrToFloat(Edit1.Text);      xb:=StrToFloat(Edit2.Text);      xc:=StrToFloat(Edit3.Text);

     ya:=StrToFloat(Edit4.Text);      yb:=StrToFloat(Edit5.Text);      yc:=StrToFloat(Edit6.Text);

     AB:=sqrt(sqr(xb-xa)+sqr(yb-ya));

     BC:=sqrt(sqr(xc-xb)+sqr(yc-yb));

     AC:=sqrt(sqr(xc-xa)+sqr(yc-ya));

     if not ((AB+BC>AC) and (AB+AC>BC) and (BC+AC>AB)) then ShowMessage('Дані точки не утворюють трикутник! Введіть інші дані!') else

           begin

           if RadioButton1.Checked then

                 begin

                 A:=arctan(sqrt(1 - sqr((AB*AB + AC*AC - BC*BC)/(2*AC*AB))) / ((AC*AC+AB*AB-BC*BC)/(2*AC*AB)));

                 A:=abs(A*180/pi);

        Label7.Caption:='Результат: '+'A='+FloatToStrF(A,ffFixed,3,2)+' градусів';

                 end

           else

                 begin

                 Mb:=sqrt((2*BC*BC+2*AB*AB-AC*AC)/4);

                 Label7.Caption:='Результат: '+'Mb='+FloatToStrF(Mb,ffFixed,10,5);

                 end;

           end;

     end

else ShowMessage('Введіть координати усіх точок!');

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: char);

begin

 case Key of

   #8,'0'..'9': ;

   '-': if Edit1.Text<>'' then Key:=#0;

   ',': begin if Length(Edit1.Text)-pos('-',Edit1.Text)=0 then Key:=#0;

        if pos(',',Edit1.Text)<>0 then Key:=#0;

        end

 else Key:=#0;

 end;

end;

procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: char);

begin

 case Key of

   #8,'0'..'9': ;

   '-': if Edit2.Text<>'' then Key:=#0;

   ',': begin if Length(Edit2.Text)-pos('-',Edit2.Text)=0 then Key:=#0;

        if pos(',',Edit2.Text)<>0 then Key:=#0;

        end

 else Key:=#0;

 end;

end;

procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: char);

begin

 case Key of

   #8,'0'..'9': ;

   '-': if Edit3.Text<>'' then Key:=#0;

   ',': begin if Length(Edit3.Text)-pos('-',Edit3.Text)=0 then Key:=#0;

        if pos(',',Edit3.Text)<>0 then Key:=#0;

        end

 else Key:=#0;

 end;

end;

procedure TForm1.Edit4KeyPress(Sender: TObject; var Key: char);

begin

 case Key of

   #8,'0'..'9': ;

   '-': if Edit4.Text<>'' then Key:=#0;

   ',': begin if Length(Edit4.Text)-pos('-',Edit4.Text)=0 then Key:=#0;

        if pos(',',Edit4.Text)<>0 then Key:=#0;

        end

 else Key:=#0;

 end;

end;

procedure TForm1.Edit5KeyPress(Sender: TObject; var Key: char);

begin

 case Key of

   #8,'0'..'9': ;

   '-': if Edit5.Text<>'' then Key:=#0;

   ',': begin if Length(Edit5.Text)-pos('-',Edit5.Text)=0 then Key:=#0;

        if pos(',',Edit5.Text)<>0 then Key:=#0;

        end

 else Key:=#0;

 end;

end;

procedure TForm1.Edit6KeyPress(Sender: TObject; var Key: char);

begin

 case Key of

   #8,'0'..'9': ;

   '-': if Edit6.Text<>'' then Key:=#0;

   ',': begin if Length(Edit6.Text)-pos('-',Edit6.Text)=0 then Key:=#0;

        if pos(',',Edit6.Text)<>0 then Key:=#0;

        end

 else Key:=#0;

 end;

end;

initialization

 {$I unit1.lrs}

end.

Результати:

Висновок.  Виконавши лабораторну роботу, я ознайомився з простими компонентами середовища Delphi, такими як TLabel, TEdit, TButton, TRadioButton та засвоїв принципи роботи з їх властивостями, отримав навички створення найпростіших обробників подій з можливістю перевірки вхідних даних та виведення інформаційних повідомлень.


 

А также другие работы, которые могут Вас заинтересовать

43823. Расчет схемы лазерной охранной системы 135.77 KB
  Но в любом случае охранное устройство на какой бы элементной базе не было построено состоит из двух модулей: приемник и передатчик. Схемное построения этих модулей могут быть различны, я в качестве темы для разработки взял схему охранной сигнализации которая обеспечивает контроль окружающего пространства с помощью лазерного луча.
43824. Разработка автоматизированной системы по работе с клиентами для технического отдела ОАО «ЮТК», г. Ессентуки 832.39 KB
  Услуги связи по передаче данных за исключением услуг связи по передаче данных для целей передачи голосовой информации. Основная ценность и полезность данных документов заключается в том что они регламентируют ключевые работы и процессы. Ессентукский филиал ОАО ЮТК оказывает клиентам следующие виды услуг: услуги местной телефонной связи; дополнительные виды обслуживания ДВО; услуги внутризоновой телефонной связи; услуги телеграфной связи; услуги проводного вещания; услуги передачи данных телематические...
43825. Исследование состояния малого предпринимательства и финансового состояния ИП «Шарипова А.Г. 1.03 MB
  С переходом экономики Российской Федерации на рыночные отношения, а в связи с этим и началом развития малого бизнеса, в научную литературу и официальные документы прочно стали входить такие понятия как «малый бизнес», «малые предприятия», «предприниматели малого бизнеса», «предпринимательство и малый бизнес» и другие. К сожалению, многие эти понятия не унифицированы и поэтому в научной литературе они трактуются далеко не однозначно.
43826. Изучение государственного управления в сфере образования 67.7 KB
  Социально-экономическая характеристика образования в РФ 6 Состояние и развитие Российской системы образования Организация системы государственного управления в сфере образования Правовое регулирование образования в РФ
43827. Розрахунок електрозабезпечення приватного акціонерного товариства Комвольно суконна компанія Чексіл 551.57 KB
  Електромонтажні роботи в даний час ведуться на високому рівні інженерної підготовки, з максимальним перенесенням цих робіт із будівельних майданчиків в майстерні монтажно-заготовительних ділянок і на заводи електромонтажних організацій.
43828. Проектирование участка ТО – 2 легковых автомобилей 1.13 MB
  Предприятие неоднократно занимало призовые места в Областном и Республиканском соревнованиях и имело одни из самых высоких показателей по выработке на один таксомотор среди предприятий Министерства автомобильного транспорта России.
43829. ИНФОРМАЦИОННЫЕ ПРОЦЕССЫ, СВЯЗАННЫЕ С РЕШЕНИЕМ ЭКОНОМИЧЕСКИХ, ОРГАНИЗАЦИОННО – УПРАВЛЕНЧЕСКИХ И УЧЕТНЫХ ЗАДАЧ НА ООО «Строй-Арсенал» 2.08 MB
  Создание российских интернетмагазинов началось в 1995 году. Интернетмагазином считается такой магазин на сайте которого существует возможность полностью завершить покупку и оплатить ее или выписать счет для оплаты в банке. Большинство же российских Интернетмагазинов представляют собой webвитрины и осуществляют торговлю на заказ через Интернет.
43830. Определение возможности получения гречневой крупы под воздействием инфракрасной обработки 532.66 KB
  Основные продукты переработки зерна используемые в питании крупы и мука. В зернах гречихи содержатся: легко усваиваемые белки до 16 в том числе незаменимые аминокислоты аргинин и лизин; углеводы до 30 и жиры до 3; много минеральных веществ железо кальций фосфор медь цинк бор йод никель кобальт; клетчатка; яблочная лимонная щавелевая кислоты; витамины группы В РР и Р рутин.Область применения В России выращиваемую гречку используют в основном для производства различных круп: ядрицы представляющей собой целые...
43831. Определение путей повышения эффективности рекламной деятельности 8.13 MB
  Маркетинговая функция. Было бы ошибкой отождествлять маркетинговую функцию рекламы с функцией экономической, хотя они в чем-то и созвучны друг другу. Однако большинство авторитетных специалистов по части рекламы предпочитают говорить о маркетинговой функции рекламы как вполне самостоятельной.