Автор работы: Пользователь скрыл имя, 11 Декабря 2013 в 22:12, курс лекций
Delphi – это среда быстрой разработки, в которой в качестве языка про-граммирования используется язык Delphi. Язык Delphi – строго типизиро-ванный объектно-ориентированный язык, в основе которого лежит хорошо знакомый программистам Object Pascal. В настоящее время программистам стала доступна очередная версия пакета Delphi – Borland Delphi 7 Studio.
Казанский государственный технический университет им. А.Н. Туполева
Кафедра технологий машиностроительных производств
Программирование в Delphi
Курс лекций
Казань
2010
ОГЛАВЛЕНИЕ
Литература 1
Лекция 1
Delphi – это среда быстрой разработки,
в которой в качестве языка программирования
используется язык Delphi. Язык Delphi – строго
типизированный объектно-ориентированный
язык, в основе которого лежит хорошо знакомый
программистам Object Pascal. В настоящее время
программистам стала доступна очередная
версия пакета Delphi – Borland Delphi 7 Studio.
Delphi 7 Studio позволяет создать самые различные
программы: от простейших однооконных
приложений до программ управления распределенными
базами. Подробную информацию о структуре,
составе и возможностях пакетов Borland Delphi
7 Studio можно найти на сайте Borland (www.borland.com/delphi).
Вид экрана после запуска Delphi несколько необычен. Вместо одного окна на экране появляются пять (Рис. 1):
Окно редактора кода почти полностью закрыто окном стартовой формы.
В главном окне находится меню команд, панели инструментов и палитра компонентов.
Окно стартовой формы
Окно редактора свойств
В окне редактора кода, которое можно увидеть, отодвинув в сторону окно формы, следует набирать текст программы. В начале работы над новым проектом это окно содержит сформированный Delphi шаблон программы.
Работа над новым проектом начинается с создания стартовой формы. Так на этапе разработки программы называются диалоговые окна.
Стартовая форма создается путем изменения значений свойств формы Form1 и добавления к форме необходимых компонентов (полей ввода и вывода текста, командных кнопок и т.д.).
При создании формы в первую очередь следует изменить значение свойства Caption (Заголовок). Чтобы это сделать, нужно в окне Object Inspector щелкнуть мышью на строке Caption, в результате чего будет выделено текущее значение свойства, в строке появится курсор, и можно будет ввести текст.
Положение диалогового окна на экране
после запуска программы
Рядом со значениями некоторых свойств отображается командная кнопка с тремя точками. Это значит, что для задания значения свойства можно воспользоваться дополнительным диалоговым окном.
Данные с клавиатуры вводят в поля редактирования. Поэтому в форму надо добавить компонент Edit – поле редактирования. Наиболее часто используемые компоненты находятся на вкладке Standard (Рис. 2). Для того чтобы добавить в форму компонент, необходимо в палитре компонентов выбрать этот компонент, щелкнув левой кнопкой мыши на его пиктограмме, далее установить курсор в ту точку формы, в которой должен быть левый верхний угол компонента, и еще раз щелкнуть левой кнопкой мыши. В результате в форме появляется компонент стандартного размера.
Размер компонента можно задать в процессе его добавления к форме. Для этого нужно после выбора компонента из палитры поместить курсор мыши в ту точку формы, где должен находиться левый верхний угол компонента, нажать левую кнопку мыши и, удерживая ее нажатой, переместить курсор в точку, где должен находиться правый нижний угол компонента, затем отпустить кнопку мыши. В форме появится компонент нужного размера.
Каждому компоненту Delphi присваивается имя, которое состоит из названия компонента и его порядкового номера. Например, если к форме добавить два компонента Edit, то их имена будут Edit1 и Edit2.
Delphi позволяет изменить размер и положение компонента при помощи мыши.
Помимо полей редактирования в окне программы должна находиться краткая информация о программе и назначении полей ввода. Для вывода текста в форму используют поля вывода текста – компонент Label. Значок компонента Label находится на вкладке Standard (см. рис. 2).
Следует обратить внимание на свойства этого компонента AutoSize (признак того, что размер поля определяется его содержимым) и WordWrap (признак того, что слова, которые не помещаются в строке, автоматически переносятся на следующую строку). Эти свойства нужно использовать, если поле вывода должно содержать несколько строк текста. После добавления к форме компонента Label значение свойства AutoSize равно True, т.е. размер поля определяется автоматически в процессе изменения значения свойства Caption. Если вы хотите, чтобы находящийся в поле текст занимал несколько строк, то надо сразу после добавления к форме компонента Label присвоить свойству AutoSize значение False, свойству WordWrap – значение True. Затем задать требуемый размер поля. Только после этого можно ввести в свойство Caption текст, который должен быть выведен в поле.
Последнее, что надо сделать на этапе создания формы – добавить в форму командные кнопки (например, Вычислить или Завершить) – компонент Button (см. рис. 2).
Щелчок на изображении командной кнопки – это пример того, что в Windows называется событием. Событие (Event) – это то, что происходит во время работы программы. В Delphi каждому событию присвоено имя. Например, щелчок кнопкой мыши – это событие OnClick, нажатие клавиши клавиатуры – OnKeyPress.
Чтобы приступить к созданию
процедуры обработки события, надо
сначала выбрать компонент, для
которого создается процедура обработки события. Затем в окне Object Inspector выбрать вкладку Events (События).
В левой колонке вкладки перечислены имена
событий, которые может воспринимать выбранный
компонент. Если для события написана
процедура его обработки, то в правой колонке
выводится имя этой процедуры (рис. 3, а).
а б
Рис. 3
Для того чтобы создать процедуру обработки события, нужно сделать двойной щелчок мышью в поле имени процедуры обработки соответствующего события. В результате этого откроется окно редактора кода, в которое будет добавлен шаблон процедуры события. Сюда можно печатать инструкции (операторы), реализующие функцию обработки события (рис. 3, б).
Редактор кода предоставляет программисту большой набор шаблонов: объявления массивов, классов, функций, процедур; инструкций (операторов) выбора (if, case), циклов (for, while, repeat). Для того чтобы в процессе набора текста программы воспользоваться шаблоном кода и вставить его в текст программы, нужно нажать комбинацию клавиш <Ctrl> + <J> и из появившегося списка выбрать нужный шаблон. Выбрав в списке шаблон, нужно нажать <Enter>, и шаблон будет вставлен в текст программы.
Проект – это набор файлов, используя которые компилятор создает исполняемый файл программы (ехе-файл). В простейшем случае проект состоит из файла описания проекта (dof-файл), файла главного модуля (dpr-файла), файла ресурсов (res-файла), файла описания формы (dfm-файла), файла модуля формы, в котором находятся основной код приложения, в том числе процедуры обработки событий на компонентах формы (pas-файл), файл конфигурации (cfg-файл).
Чтобы сохранить проект, нужно из меню File выбрать команду Save All (сохранить все). Обратите внимание на то, что имена файлов модуля (pas-файл) и проекта (dpr-файл) должны быть разными. Имя генерируемого компилятором исполняемого файла совпадает с именем проекта. Поэтому файлу проекта следует присвоить такое имя, которое, по вашему мнению, должен иметь исполняемый файл программы, а файлу модуля – какое-либо другое имя, например, полученное путем добавления к имени файла проекта порядкового номера модуля. Так как проект представляет собой набор файлов, то рекомендуется для каждого проекта создавать отдельную папку.
В качестве первого примера рассмотрим проект, созданный для вычисления простейшего выражения y = ax + b.
Форма для вычисления выражения y = ax + b содержит три окна Edit, пять полей Label, две кнопки Button (рис. 4).
В окна Edit1, Edit2, Edit3 в процессе работы программы вводятся значения коэффициентов a, b и переменной х. В поле Label1 выводится значение переменной у. Щелчок по кнопке Выполнить приводит к выполнению программы, то есть умножает содержимое поля Edit1 на содержимое поля Edit3, прибавляет содержимое поля Edit2 и выводит результат в поле Label1. Кнопка Завершить завершает выполнение программы.
В табл. 1 приведены свойства полей, окон и кнопок. Показаны только те свойства, которые были изменены.
Таблица 1
Поле |
Свойство |
Значение свойства |
Edit1, Edit2, Edit3 |
Text |
Пустое поле |
Label1 |
AutoSize |
False |
Caption |
Пустое поле | |
Label2 |
Caption |
a |
Label3 |
Caption |
b |
Label4 |
Caption |
x |
Label5 |
Caption |
y |
Button1 |
Caption |
Выполнить |
Button2 |
Caption |
Завершить |
Текст программы приведен в листинге 1. Обычным шрифтом показан шаблон, создаваемый Delphi, жирным шрифтом выделены инструкции, написанные программистом.
unit Primer1; Листинг 1
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
// нажатие кнопки Выполнить
procedure TForm1.Button1Click(Sender: TObject);
var
a,b,x,y:real;
begin
// получить исходные данные из полей ввода
a:=StrToFloat(Edit1.Text);
b:=StrToFloat(Edit2.Text);
x:=StrToFloat(Edit3.Text);
//вычисления
y:=a*x+b;
// вывод результата
label1.Caption:=FloatToStrF(y,
end;
// нажатие кнопки Завершить
procedure TForm1.Button2Click(Sender: TObject);
begin
Form1.Close;
end;
end.
Процедура TForm1.Button1Click(Sender: TObject) образуется при двойном щелчке в поле имени события OnClick в окне Object Inspector (вкладка Events).
В этой процедуре используются переменные a, b, x, y типа real. Они описаны после заголовка процедуры.
В теле процедуры (между словами begin и end) сначала необходимо перевести исходные данные из полей ввода (строковые переменные) в переменные типа real:
a:=StrToFloat(Edit1.Text); b:=StrToFloat(Edit2.Text); x:=StrToFloat(Edit3.Text);
Затем вычисляется выражение y:=a*x+b.
Результат присваивается свойству Caption поля Label1:
label1.Caption:=FloatToStrF(y,
Функция FloatToStrF преобразует переменную типа real в строковую переменную и имеет 4 параметра: имя переменной; параметр, обозначающий, что переменная будет выводиться в виде числа с фиксированной запятой; общее количество знаков (включая знак числа); количество цифр после запятой.
Информация о работе Курс лекций по дисциплине "Программирование и комьпютеры"