Форма описывается как объект в три этапа

  1. Сначала в разделе Type описывается заголовочная часть (интерфейс) при помощи ключевого слова Class. Форма наследуется от класса TForm. В заголовке объявляются свойства и методы класса.
  2. Затем пишутся тексты методов (по умолчанию методы отсутствуют).
  3. Сам объект формируется в разделе Var в виде переменной данного класса.

 

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


Форма обладает многими свойствами. Свойства отражены в инспекторе объектов на закладке Propertis

 

 

Главной задачей формы является стабилизация изображения в окне, защита его от перекрытия другими окнами. Форма реагирует на разнообразные события, препятствуя разрушению изображения.

Одним из важнейших событий является OnPaint. Это событие возникает всякий раз, когда Windows решает, что необходимо перерисовать окно формы. Для обработки события создаётся специальный метод, выполняющий перерисовку изображения на канве формы.

Заготовка подпрограммы, обслуживающей данное событие, выбирается на закладке Eventsинспектора объектовщелчком в окне против слова OnPaint


 

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

ü Выбор компонент и определение их параметров осуществляется в визуальной форме.

ü Технологической основой программирования на Delphi служит объектно-ориентированный подход (окна, компоненты и пр. являются объектами).

 

Среди множества окон на экране, одно является активным, полоса активного окна обычно выделена среди остальных, нажатие кнопки клавиатуры воздействует на активное окно. Окна могут приобретать или терять активность, шелчком мыши или в соответствие с кодом программы. В окнах происходят события (клавиатурные, мышиные, программные). К программным событиям относят отдельные этапы функционирования программы, например этап создания формы (выделение для неё памяти), момент активизации окна формы, закрытие формы и др. Программист имеет возможность отреагировать на любое событие, путём написания кода обработки этого события. Изучим 2 события формы: момент создания формы и необходимость перерисовки формы. Среди окон делфи находится инспектор объектов, через инспектор просматриваются свойства всех компонентов проекта, в том числе и форма.

Билет №28:

Компоненты Image

1) Для удобства программистов разработано большое количество компонент в которых отражены основные возможности системы Windows. Компоненты это программные модули которые представляют собой классы, легко вставляемые в проекты делфи. Компоненты бывают оконные и нет. Оконным компонентам выделяются окна на экране, такие компоненты обычно называются визуальными. Безоконные компоненты либо вовсе не имеют окон либо их окна создаются эпизодически и разрушаются. Компоненты представлены на закладках расположенных вверху справа, иногда их совокупность называют библиотекой компонентов. Каждая закладка имеет имя и представляет собой набор компонентов, объединённых по некоторому принципу. Внутри закладок компоненты изображаются значками, чтобы включить компонент в проект, надо щёлкнуть по форме (чтобы форма оказалась целиком видной), затем выбрать закладку щелчком мыши, затем так же выбрать компонент и описать мышью прямоугольник на форме. Теперь выделенное окно назначается компоненту, при этом в программный код автоматически вставляется поле, описывающее данный компонент.

2) Свойство Picture, объекта Image содержит всё что связывает этот объект с внешними устройствами, в том числе и метод LoadFromFile. Др. св-ва: AutoSize при True позволяет картинке принимать полный размер. Center при True помещает картинку в окно с центра. Stretch True подгоняет картинку под размер окна.

 

3) Сохранение картинок – SaveToFile, загрузка: LoadFromFile

4) Таймер. На закладке System лежит компонент в виде циферблата. Это не визуальный компонент, который выносится на форму в виде значка, его можно разместить где угодно, изменить размер невозможно, он служит лишь для обозначения того что на форме есть этот компонент. В инспекторе объектов видны св-ва таймера: 1) Enabled – отвечает за включение и выключение таймера (True, False соответственно) 2) Interval:=мсек. Содержит количество времени в миллисекундах. Задача таймера – считать миллисекунды и в момент когда набирается заданное число, приостанавливать программу и выполнять особую подпрограмму. Подпрограмма описывается среди событий таймера, она имеет обозначение OnTimer. Затем счётчик миллисекунд сбрасывается в 0 и всё повторяется. Особенности человеческого глаза таковы, что смена картинок 24 раза в секунду воспринимается как непрерывное действие. В мультипликационных фильмах грубо выделяются объекты 3х видов: дальние объекты (задний план), ближние объекты (передний план), и объекты движущиеся между ними (спрайты). В процессе движения спрайтов понятие плана может меняться. Распределение объектов по планам достигается просто, сначало рисуется задний план, без прозрачности, затем спрайт, учитывая прозрачность, а в конце передний план с учётом прозрачности. Выждав время надо перерисовать всё повторно, но при этом изменить положение или форму спрайта.

Билет №29:

Компонент TLabel

1) Метки – это компоненты для отображения текста без возможности редактировать. На закладке Standard метка представлена значком Lable A, на закладке additional значком Static text. T. Много общего, но есть разница. Второй компонент обладает свойством Border Style. Текст окна находится в свойстве Caption. Существуют варианты отображения текста в окне. Свойство AutoSize (True) пытается подогнать окно под размер текста. При смене значения в False окно не меняет размеры. Др. св-во: WordWrap при True разрешает переносы по словам. Программист может заранее определить разрезку на строки, при помощи спец. Символа #13.

 

2) Свойства

 

3) События

4) К событию можно привязать несколько меток, которые будут реагировать на него одновременно, например при нажатии мыши на кнопку появляются сразу 2 разных метки с каким то текстом и т.п.