Планирование уроков на учебный год (по учебнику К.Ю. Полякова, Е.А. Еремина, полный углублённый курс, по 4 часа в неделю)



Уроки 95 - 97
Программы с графическим интерфейсом
(§51. Программы с графическим интерфейсом. §52. Основы программирования в RAD-средах)




Содержание урока

§51. Программы с графическим интерфейсом
§52. Основы программирования в RAD-средах

Общий подход

Простейшая программа

Свойства объектов

Обработчики событий

Вопросы и задания

Задача


§52. Основы программирования в RAD-средах


Простейшая программа


Для создания проекта в Lazarus нужно выбрать пункт меню Файл — Создать и в появившемся окне отметить вариант Проект — Приложение. При этом создаётся вполне рабочая программа, которую сразу же можно запустить на выполнение клавишей F9.

При работе в среде Lazarus используются четыре окна (рис. 7.14):

• главное окно;
• окно Инспектора объектов;
• окно исходного кода;
• окно формы.

Рис. 7.14

Рис. 7.14

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

Вся программа, согласно принципам ООП, состоит из объектов. Для настройки свойств объектов используется окно Инспектора объектов, которое состоит из двух частей. В верхней части показано дерево объектов. В простейшей программе мы увидим всего один объект — форму с именем Form1. В нижней части окна несколько вкладок, самые важные из них — Свойства, где можно изменить общедоступные свойства объекта, и События, на которой устанавливаются обработчики событий этого объекта.

В окно формы можно мышью перетаскивать компоненты с палитры и изменять их размеры и расположение. Таким образом, интерфейс программы полностью строится с помощью мыши.

С каждой формой связан программный модуль, в котором описываются классы и обработчики событий, используемые этой формой. Файлы формы и соответствующего ей модуля имеют одинаковое имя, но разные расширения. По умолчанию созданная главная форма программы называется Forml, а модуль — Unit1. Содержание модуля примерно такое:

unit Unit1;
interface
uses
	Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs; 
type
		TForml=class(TForm) 
	private
		{private declarations} 
	public
		{public declarations}
	end; 
var
	Forml: TForml;
	implementation
	{$R *.lfm} 
	end.

Как и в любом модуле, здесь есть две секции: interface (интерфейс, общедоступные данные) и implementation (реализация — данные, скрытые от других модулей). После слова uses перечисляются модули библиотеки Lazarus, которые используются для работы с формой.

Из приведённого текста программы видно, что форма (объект Form1) — это экземпляр класса TForm1, который является наследником стандартного класса TForm из библиотеки. Пока никаких новых полей, свойств и методов в созданный класс не добавлено.

Секция implementation практически пуста. Единственная строчка

{$R *.lfm}

похожа на комментарий (в фигурных скобках), однако транслятор обращает на неё внимание. Эта команда подключает файл с тем же именем, что и у модуля, но с расширением lfm (описание формы и размещённых на ней компонентов).

Как вы знаете, модуль не может выполняться самостоятельно. Основная программа находится в файле проекта. Для того чтобы увидеть его, нужно нажать клавиши Ctrl+F12 и выбрать файл с расширением lрr. Этот файл будет загружен в отдельную вкладку редактора:

program project1; 
uses
	Interfaces, Forms, Unitl1; 
begin
	Application.Initialize;
	Application.CreateForm(TForml, Form1);
	Application.Run; 
end.

В начале файла подключаются используемые модули Interfaces и Forms из библиотеки Lazarus, а также модуль Unit1, связанный с нашей формой.

Вся программа — это объект с именем Application, который относится к классу TApplication. Этот объект создаётся автоматически при загрузке модуля Forms. В основной программе вызываются три его метода: Initialize (начальные установки), CreateForm (создание формы) и Run (запуск). Цикл обработки сообщений скрыт внутри метода Run, так что здесь тоже использован принцип инкапсуляции (скрытия внутреннего устройства).

Следующая страница Свойства объектов



Cкачать материалы урока






Наверх