23372

Использование компонента Timer. Организация простейшей мультипликации

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

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

В данной работе приводятся примеры работы компонента Timer обеспечивающего доступ к системному таймеру компьютера и его использование совместно с компонентом Image для создания простейшей мультипликации. Компонент Timer. Прием сообщений от таймера компьютера в приложении Delphi обеспечивает специальный компонент Timer со страницы System Палитры Компонентов.

Русский

2013-08-04

68.5 KB

32 чел.

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

Использование компонента Timer.

Организация простейшей мультипликации.

В данной работе приводятся примеры работы компонента Timer, обеспечивающего доступ к системному таймеру компьютера, и его использование совместно с компонентом Image для создания простейшей мультипликации.

Компонент Timer.

Таймер – это системный генератор событий, представляющий собой специальную микросхему, установленную на материнской плате компьютера. Он периодически сообщает Windows о завершении заданного промежутка времени. Прием сообщений от таймера компьютера в приложении Delphi обеспечивает специальный компонент Timer со страницы System Палитры Компонентов.

Ниже приведена последовательность действий, которая должна быть проделана для того, чтобы этот компонент начал функционировать в Вашем приложении:

  •  выбрать компонент Timer на вкладке System Палитры Компонентов и поместить его на форму проекта;

Примечание. Данный компонент является невизуальным, поэтому в процессе проектирования приложения он выглядит как иконка, размеры которой изменить нельзя, а её месторасположение на форме значения не имеет.

  •  в свойстве Interval в Инспекторе Объектов установить желаемый период следования событий в миллисекундах от 1 до 65.535;

 

Примечание. Если установить значение 1000 (оно стоит по умолчанию), то включится секундный таймер, а при значении 100 – таймер будет генерировать события через одну десятую секунды.

  •  компонент Timer имеет только одно событие: OnTimer (Срабатывание таймера). Если дважды щелкнуть мышью в поле значения справа от имени события OnTimer в Инспекторе Объектов, или на самом объекте Timer, помещенном на форму, Delphi сформирует заготовку процедуры обработки этого события. Вам остаётся только между слов begin и end вставить необходимые операторы, которые будут периодически выполняться с заданной частотой таймера.

Задание 1. Создание приложения «Цифровые часы».

В приложении «Цифровые часы» будет продемонстрировано, как создать обработчик события для компонента Timer.

Выполните следующие действия:

  •  откройте новый проект;
  •  форме дайте название «ЧАСЫ»;
  •  для того, чтобы вид часов не мог изменяться в ходе выполнения программы, изменим некоторые свойства самой формы:
  •  сделайте форму текущей, щелкнув по ней мышью;
  •  в Инспекторе Объектов найдите свойство BorderIcons и, щелкнув по нему мышью, раскройте список его вложенных свойств;
  •  установите для вложенных свойств biSystemMenu и biMinimize значения True (присутствуют), а остальным – False (отсутствуют), согласно таблице, приведённой ниже;

 

Вложенные свойства Borderlcons

Описание

Значение

biSystemMenu

Кнопки системного меню и закрытия окна

True

biMinimize

Кнопка свёртывания окна

True

biMaximize

Кнопка развертывания окна

False

bihelp

Кнопка вызова помощи

False

  •  для свойства BorderStyle экранной формы из раскрывающе-гося списка выберите значение bsSingle (Рамке окна запре-щено изменять свои размеры);

Примечание. Эффект изменения этих свойств можно увидеть только  после запуска приложения.

  •  поместите на форму компонент Label со страницы Standard Палитры Компонентов. Задайте значение 00:00:00 его свойству Caption. Цвет метки (свойство Color) и её размеры выберете по желанию;
  •  в свойстве Font для компонента Label выберете имя шрифта, его размер, цвет и стиль начертания, которые Вы предпочитаете для индикации времени;
  •  поместите на форму компонент Timer со страницы System Палитры Компонентов;
  •  свойству Interval объекта Timer1 в Инспекторе Объектов присвойте значение 1000, таким образом будет задан период отсчета, равный одной секунде;
  •  дважды щелкните мышью в поле значения события OnTimer (закладка Events Инспектора Объектов для таймера) или на самом объекте Timer1, тем самым задав команду Delphi сформировать заготовку процедуры программного кода для обработки этого события в файле программного модуля;
  •  между строками ключевых слов Begin   end вставьте следующий текст: Label1.Caption:=TimeToStr(Time);

Примечание. Функция TimeToStr преобразует значение текущего времени встроенных системных часов компьютера в строку и присваивает это значение свойству Caption объекта Label1. Таким образом, в ответ на каждое событие OnTimer на экране будет выводиться значение каждой секунды.

  •  нажмите F9. Delphi откомпилирует и запустит приложение на выполнение. Его примерный вид приведён на рис.7.1;

Рис. 7.1. Цифровые часы

  •  обратите внимание на присутствие и вид управляющих кнопок формы: некоторые кнопки стали неактивны. Проверьте, возможно ли изменить размер окна;
  •  налюбовавшись действием часов, покажите их преподавателю и сохраните приложение в отдельной папке.

Организация простейшей мультипликации:

Теперь покажем, как можно использовать компонент Timer для создания простейшей мультипликации.

Задание 2. Разработаем приложение «Демонстрация полёта спутника Земли».

Выполните следующие действия:

  •  откройте новый проект;
  •  переименуйте форму, дав ей название «Демонстрация полета спутника Земли»;
  •  с помощью компонента Image1 поместите на форму картинку с изображением планеты Земля на фоне звёздного неба. Картинку предварительно создайте в графическом редакторе Paint (файл формата .bmp) или возьмите готовую, если такая имеется;
  •  установите размеры компонента Image1 на форме максимально возможными (если требуется, увеличьте размеры самой формы);
  •  с помощью компонента Image2 поместите на форму изображение спутника. Изображение спутника можно создать с помощью утилиты ImageEditor, входящей в состав стандартной поставки Delphi (см. лабораторную работу 3). Напомним, что утилита вызывается через главное меню Delphi: Tools/ ImageEditor. Файл со спутником сохраните в формате *.ico (иконка);
  •  поместите на форму три компонента Button (Кнопка) и задайте их свойствам Caption значения: «Пуск», «Стоп», «Выход». У Вас должно получиться нечто, похожее на Рис. 7.2.

Рис. 7.2. Вид формы «Спутник Земли»

  •  установите на форме компонент Timer и задайте его свойству Interval значение 100 (срабатывание через 0.1 секунды);
  •  щелкнув дважды в поле события OnTimer, впишите программный код закона движения спутника. Ниже приведено описание движения по окружности относительно центра компонента Image1:

{--------------------------- Обработка события таймера -----------------------------}

procedure TForm1.Timer1Timer(Sender: TObject);

begin

 if PUSK then

   begin

{--------------------------- Расчет координат спутника ------------------------------}

     Image2.Left:=Image1.Left+Image1.Width div 2

                  +trunc(cos(Alfa*pi/180)*R);

     Image2.Top :=Image1.Top+Image1.Height div 2

                  -trunc(sin(Alfa*pi/180)*R);

     Alfa:=Alfa+1; // Изменение угла поворота на орбите

   end;

end;

  •  в разделе “Инициализация” задайте начальные значения переменным;

{================= Раздел инициализации ====================}

begin

 PUSK:=false;      // Нет движения спутника

 Alfa:=0;              // Начальный угол поворота на орбите

 R:=200;               // Радиус орбиты

end.

Примечание. Переменные, заданные в этом разделе должны быть описаны глобально: var Аlfa, R:integer; PUSK:boolean.

  •  обработайте событие при нажатии на кнопку «Выход», для чего активизируйте эту кнопку на форме, двойным щелчком откройте Редактор Кода и вставите строку Close;
  •  доработайте приложение самостоятельно таким образом, чтобы при нажатии на кнопку «Пуск» движение начиналось, а при нажатии на кнопку «Стоп» приостанавливалось;
  •  попробуйте усовершенствовать программу, чтобы иметь возможность менять направление движения спутника (по часовой стрелке / против часовой стрелки) и его скорость движения по орбите с помощью дополнительных кнопок управления, помещенных в приложение;
  •  сохраните проект в отдельной папке. Результаты работы покажите преподавателю.

Вопросы

  1.  Что из себя представляет компонент Timer и как им можно воспользоваться в разрабатываемом приложении?
  2.  Перечислите последовательность действий, которая должна быть проделана для того, чтобы компонент Timer начал функционировать в приложении.
  3.  Как изменить период следования событий?
  4.  Как задать последовательность действий, которая должна периодически повторяться через определенный промежуток времени?
  5.  Приведите примеры, в каких случаях, кроме тех которые приведены в данной лабораторной работе, можно воспользоваться компонентом Timer.

Резюме

Компонент Timer обеспечивает приём периодически повторяющихся сообщений от системного таймера компьютера. Таким образом, его можно использовать в приложении, когда требуется генерировать события через заданные промежутки времени, например: смена кадров изображения при создании простейшей мультипликации.  

Основные положения при работе с компонентом Timer:

  •  для свойства Interval  желаемый период следования событий задаётся в миллисекундах от 1 до 65.535;
  •  при значении 1000 включается секундный таймер;
  •  компонент Timer имеет только одно событие: OnTimer (Срабатывание таймера), в обработчик которого следует вписать нужную последова-тельность действий, которую необходимо периодически повторять.

6

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


 

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

79255. Формы и системы оплаты труда. Тарифная система оплаты труда. Бестарифная система оплаты труда 16.45 KB
  Формы и системы оплаты труда. Тарифная система оплаты труда. Бестарифная система оплаты труда Формы и системы оплаты труда Система оплаты – это определенная взаимосвязь между показателями характеризующими меру норму труда и меру его оплаты в пределах и сверх норм труда гарантирующая получение работником заработной платы в соответствии с фактически достигнутыми результатами труда относительно нормы и согласованной между работником и работодателем ценой его рабочей силы. Форма заработной платы – это тот или иной класс систем оплаты труда...
79256. Расчет сметы капитальных затрат на обновление предприятия 17.73 KB
  Капитальные вложения это средства затраты в денежном выражении которые направляются на обновление и воспроизводство основных фондов предприятия. полностью еще не самортизировала себя то ее остаточная стоимость должна быть приплюсована к капитальным вложениям так как это затраты предприятия. Смета капитальных вложений КВ: КВ = Зпир Зппп Зписмр Зо Зтмц Зпр где Зпир – затраты на проектноизыскательские работы; Зппп – затраты на подготовку новых производственных площадей к монтажу приобретаемого...
79257. Состав и структура народно-хозяйственного комплекса Российской Федерации. Особенности отраслевого производства и черной металлургии 24.33 KB
  Под отраслевой экономической структурой понимается соотношение между отдельными отраслями по производимой продукции производственным фондам численности работников и т. Экономическую структуру характеризуют следующие показатели: 1 доля отдельной отрасли в общем объеме производства ВВП; 2 соотношение между производством средств производства и производством предметов потребления; 3 соотношение между потреблением и накоплением; 4 соотношение между промышленностью и сельским хозяйством; 5 соотношение между материальной и нематериальной...
79258. Классификация предприятий 240.56 KB
  Коммерческой деятельности Организация обособленное образование являющееся юридическим лицом выполняющая социальные услуги осуществляющая деятельность на основе: Членских и прочих взносов и платежей Коммерческой деятельности Бюджетного финансирования Особенности предприятия как производственной системы: 1. Открытый характер предприятия по отношению к внешней среде. Совокупность предметов и явлений составляющие одно целое при высоком разнообразии процессов производства и управления или комплексности целей и задач предприятия....
79259. Основные понятия, функции и принципы управления деятельностью коммерческого предприятия 19.09 KB
  Организации внутренне присущи особенности: структурированность совокупность устойчивых связей объекта внутренняя упорядоченность внутренние правила обеспечивающие рациональное налаженное состояние организации согласованность согласованность взаимодействия относительно самостоятельных частей в системном объекте Организации производства Сущность. Это единство:структуры и содержания производственной системы ее формы как юридического лица; процесса функционирования системы в соответствии с ее миссией по переработке входа системы...
79260. Значение совершенствования организации основного производства. Направления совершенствования организации основного производства 16.21 KB
  В условиях рыночных отношений обеспечить промышленному предприятию эффективное функционирование и конкурентные преимущества может только эффективная система управления его производственной деятельностью.Без четкой научно обоснованной организации процесса вряд ли можно добиться высоких показателей системы управления.Поэтому организация труда управленческого персонала во многом определяет эффективность всей системы управления производством как в текущем так и в оперативном режиме её функционирования.Формирование рациональной...
79261. Структура и взаимосвязь элементов системы организации производства. Предприятие как организационная система. Особенности, функции предприятия 17.23 KB
  Предприятие как организационная система. Особенности функции предприятия Предприятие как организационная система Системаобъективное единство закономерно связанных друг с другом предметов или целое состоящее из частей упорядоченных по определенному закону или принципу или Взаимосвязь взаимообусловленных сопокупность входящих в ее состав элемнтов Системный подход инструмент исследования – систематизированный способ мышления согласно которому процесс обоснования решений базируется на определении общей цели и подчинении ей подсистем...
79263. Отраслевой состав национальной экономики. Особенности черной металлургии 14.01 KB
  Отраслевой состав национальной экономики. Особенности черной металлургии Отраслевая структура национальной экономики заключается в группировке хозяйствующих субъектов в однородные по своему составу группы связанные однородными функциональными характеристиками – отрасли национальной экономики. Отраслевая структура национальной экономики проходит следующие этапы своего развития: 1 первый связан с активным развитием и преобладанием первичных отраслей экономики таких как сельское хозяйство добыча полезных ископаемых; 2 второй связан с...