Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 19.04.2014, 19:20
WishHunter WishHunter вне форума
Прохожий
 
Регистрация: 19.04.2014
Сообщения: 4
Версия Delphi: Delphi 7
Репутация: 10
Печаль Примитивное задание

Народ, я заочник, поэтому мягко сказать нуб пока, помогите если не трудно с контрольным заданием!!! Очень прошу

Модуль содержит описание типа-объекта TRect – прямоугольник.

1. Используя этот модуль, написать программу, изображающую на
экране мигающий прямоугольник. Изменить модуль, объявив часть полей
личными.

2. Написать свой модуль, в котором описать два новых объекта,
наследующих от TRect : прямоугольник, способный случайным образом
изменять размеры, цвет и стиль заполнения, и эллипс, обладаюший таким же
поведением. Составить программу, изображающую на одной половине
экрана мигающий прямоугольник, а на другой - мигающий эллипс.

3. Создать новый объект "Среда", который мог бы занимать весь экран
или его часть и содержать внутри себя четыре объекта, вид объектов
определяется случайно при инициализации среды из объектов, созданных в
результате выполнения пункта 2. Объекты размещаются каждый в своем
квадранте и при выполнении программы изменяют свои параметры.

Буду вам премного благодарен!
Ответить с цитированием
  #2  
Старый 19.04.2014, 22:25
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну и где этот модуль???
Кстати, TRect уже есть в Delphi, только это, если не ошибаюсь, запись, а не класс.
Ответить с цитированием
  #3  
Старый 20.04.2014, 19:03
WishHunter WishHunter вне форума
Прохожий
 
Регистрация: 19.04.2014
Сообщения: 4
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Код:
unit Rectangl; 
 
interface 
uses Graph, Crt; 
 
const EnvColor = white ; { цвет фона } 
 
type 
 
 TRect = object { тип объекта "прямоугольник" } 
 X, Y : integer; { координаты центра } 
 SizeX, SizeY : integer; { размеры } 
 Color : byte; { цвет } 
 FillStyle : byte; { способ закраски } 
 Filled : Boolean; { флаг закраски } 
 Visible : Boolean; { флаг видимости } 
 procedure Init(InitX,InitY,InitSizeX,InitSizeY :  
 10
 integer; InitColor,InitFillStyle : byte); 
 {Начальная установка параметров прямоугольника } 
 procedure Show; 
 { Высвечивает прямоугольник на экране } 
 procedure Hide; 
 { гасит изображение прямоугольника } 
 function IsVisible : boolean; 
 { Возвращает значение флага видимости } 
 function IsFilled : boolean; 
 { Возвращает значение флага закраски } 
 function GetFigureColor : byte; 
 { Возвращает значение цвета прямоугольника } 
 function GetX : integer; 
 { Возвращает X координату центра } 
 function GetY : integer; 
 { Возвращает Y координату центра } 
 function GetWidth : integer; 
 { Возвращает размер прямоугольника по оси X } 
 function GetHeight : integer; 
 { Возвращает размер прямоугольника по оси Y } 
 procedure SetVisibilityFlag (NewVisible:boolean); 
 { Устанавливает флаг видимости объекта } 
 procedure SetFillFlag (NewFilled : boolean); 
 { Устанавливает флаг закраски объекта } 
 procedure SetFillStyleM(InitFillStyle : byte) ; 
 { Устанавливает способ закраски объекта } 
 procedure SetFigureColor(TheColor : byte); 
 { Устанавливает цвет объекта } 
 end; 
 
implementation 
{************ методы TRect **************} 
 
procedure TRect.Init; 
begin 
 X := InitX; Y := InitY; 
 SizeX := InitSizeX; SizeY := InitSizeY; 
 SetFigureColor(InitColor); 
 SetVisibilityFlag(true); 
 SetFillStyleM(InitFillStyle); 
 SetFillFlag(true); 
end; 
 
function TRect.IsVisible : boolean; 
begin 
 IsVisible := Visible;  
 11
end; 
 
function TRect.IsFilled : boolean; 
begin 
 IsFilled := Filled; 
end; 
 
function TRect.GetFigureColor : byte; 
begin 
 GetFigureColor := Color; 
end; 
 
function TRect.GetX : integer; 
begin 
 GetX := X; 
end; 
 
function TRect.GetY : integer; 
begin 
 GetY := Y; 
end; 
 
function TRect.GetWidth : integer; 
begin 
 GetWidth := SizeX; 
end; 
 
function TRect.GetHeight : integer; 
begin 
 GetHeight := SizeY; 
end; 
 
procedure TRect.Hide; { гасит изображение объекта } 
begin 
 SetColor(EnvColor); 
 SetFillStyle(EmptyFill, Color); 
 if Filled 
 then Bar( X - SizeX div 2, Y - SizeY div 2, 
 X + SizeX div 2, Y + SizeY div 2 ) 
 else Rectangle( X-SizeX div 2, Y-SizeY div 2, 
 X+SizeX div 2, Y+SizeY div 2 ) 
end; 
 
procedure TRect.SetVisibilityFlag ; 
begin 
 Visible := NewVisible; 
end; 
  
 12
procedure TRect.SetFillFlag ; 
begin 
 Filled := NewFilled; 
end; 
 
procedure TRect.SetFillStyleM(InitFillStyle: byte) ; 
begin 
 FillStyle := InitFillStyle; 
end; 
 
procedure TRect.SetFigureColor(TheColor : byte); 
begin 
 Color := TheColor; 
end; 
 
procedure TRect.Show; {высвечивает объект на экране} 
begin 
 if Visible then begin 
 SetColor(Color); 
 SetFillStyle(FillStyle, Color); 
 if Filled 
 then Bar( X - SizeX div 2, Y - SizeY div 2, 
 X + SizeX div 2, Y + SizeY div 2 ) 
 else Rectangle( X-SizeX div 2, Y-SizeY div 2, 
 X+SizeX div 2, Y+SizeY div 2 ) 
 end; 
end; 
 
end. 
Ответить с цитированием
  #4  
Старый 20.04.2014, 21:00
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

А что это за старьё от TurboPascal???
Это все надо переписывать...
Ответить с цитированием
  #5  
Старый 21.04.2014, 01:21
WishHunter WishHunter вне форума
Прохожий
 
Регистрация: 19.04.2014
Сообщения: 4
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Понимаю, но уж что дали, с преподом бесполезно спорить
Ответить с цитированием
  #6  
Старый 21.04.2014, 03:13
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Дык не будет работать на Дельфи. Там таких модулей-то (Graph, Crt) больше нет.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 13:02.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025