При создании баз данных необходимо дописать DB.
Вызов родительских методов
Часто большая часть функциональности наследуемых методов уже реализована в родительских классах.
Чтобы вызвать одноименный метод ближайшего родительского класса необходимо в нужном месте программы указать ключевое слово inherited.
В момент когда программа встретит это слова работа метода временно прервется и вызовется одноименный метод родительского класса. Если требуется вызвать другой метод, не совпадающий по названию с текущим, то его можно указать после ключевого слова явно
inherited Click;
№9. Пустая форма и её модификации. Размещение нового компонента.
Создать заготовку будущего приложения можно выполнив команду:
File-New-Application.
На экране возникнет пустая форма- прообраз будущего главного окна программы, а в редакторе кода откроется файл Unit1.pas, соответствующий модулю Unit1, в котором хранится описание работы этой формы. В разделе реализации выполняется подключение стандартных модулей
Interface
Uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;
Затем объявляется тип TFORM1 сод описание формы и декларируется переменная соответствующего класса:
var Form1:TForm1;
Когда создаётся новое приложение, то система Delphi формирует новый тип данных, наследующий характеристики своего родителя:
Type
TForm1=class(TForm)
Private
{private declarations}
Public
{public declarations}
End;
Форма Form1 представлена в программе типом TForm1, который исходно не имеет новых полей и методов т.к. форма пуста. Позже члены класса TForm1 будут добавляться по мере необходимости как автоматически (при размещении их на форме в проектировщике форм!) так и самим программистом.
Далее в модуле идет раздел реализации, в котором имеется всего одна директива компилятора
{$R*.dfm}
Она назначена для связывания модуля с описанием соответствующей ему формы.
Набор файлов, в которых содержатся исходные тексты и различные настройки называется проектом.
*.pas
*.dfm – файл программной формы.
*.dpr – файл проекта.
*.dcu – откомпилированный модуль.
*.res – файл ресурсов.
Разделение на проекты очень удобно потому что позволяет выделить все файлы относящиеся к конкретной задаче в отдельную группу.
F12 – переключение в проектировщик форм (показать форму).
F11 – переключение в инспектор объектов.
F7 – пошаговая отладка.
F8 – отладка, при которой не осуществляется вход в процедуры и функции.
F4 – запуск программы и переход в режим отладки в том месте где стоит курсор.
Если в свойстве Name формы вместо Form1 записать MyForm и нажать клавишу ввода то:
1) Заголовок формы изменится с Form1 на MyForm. Система Delphi считает, что заголовок формы совпадает с её названием пока разработчик не изменит его явно!
2) Тип формы в файле Unit1.pas изменится с TForm1 на TMyForm
3) Имя переменной Form изменится на MyForm
Заголовок формы – это свойство Caption. В свойстве Name можно использовать только латинские буквы и цифры.
Чтобы разместить на форме текстовое поле необходимо:
1) Выбрать панель Standard.
2) щелкнуть на кнопке Edit(текстовое поле).
3) щелкнуть на том месте формы, где необходимо разместить компонент!
После этого автоматически в раздел Private класса TMyForm будет добавлена новое поле Edit1:TEdit;
Аналогично добавим на форму еще один компонент Edit (Edit2), кнопку Buttton1, надпись Label1. В обоих компонентах Editв свойстве Text пишем «0», в свойстве Caption кнопки Buttton1 – «вычислить», а в свойстве Caption объекта Label1 укажем «0».
Размеры каждого объекта задаются и фиксируются с помощью свойств Width – ширина и Height - высота.
№12. Форма. Добавление новой формы в программу с многими формами.
Форма (class TForm) содержит множество свойств методов и событий, позволяющих легко настраивать самые сложные алгоритмы её функционирования.
Основные свойства класса TForm
Свойства | Назначения |
ActiveControl | Объект на форме, который имеет фокус ввода |
Canvas | Область рисования формы |
HelpFile | Название файла справки для формы |
Icon | Значок, обозначающий форму, когда она свернута |
Menu | Ссылка на главное меню формы |
ModalResult | Значение, возвращаемое формой, если она работает как модальное диалоговое окно |
Parent | Хозяин формы |
PixelsPerInch | Число пикселей на дюйм применяется для настройки размеров формы в зависимости от экранного разрешения |
Position (ppDesigned, ppScreenCenter и др.) | Положение формы на экране в момент её открытия в программе |
Scaled | Содержит значение True, если размер формы будет подгоняться в соответствии со значением свойства PixelsperInch |
WindowState | Состояние формы (свернуто, развернуто или нормальный размер) |
События формы
Название события | Доп. параметры обработчика | Описание |
OnCreate | Вызывается при создании формы после выполнения конструктора | |
ONshow | Вызывается при отображении формы (методами showModal) | |
Onactivate | Вызывается при получении формой фокуса ввода (форма становится активной) автоматически вызывается после отображения формы методами Show and Showmodal т.е. после отображения форма активна | |
Onpaint | Вызывается при необходимости прорисовки формы (при затирании области формы другим окном) | |
OnHide | Вызывается при скрытии формы с экрана методом Hide или при установке свойства Visible в False | |
Ondeactivate | Вызывается при потери формой фокуса ввода (при перемещении на другую форму, а также при сворачивании формы или приложения), автоматически вызывается при скрытии формы с экрана методом Hide | |
OncloseQuery | Var CanClose: Boolean | Вызывается для проверки возможности закрытия вне зависимости от действий, которые следует произвести при закрытии формы возможно или нет закрыть форму возвращается в параметры CanClose |
OnClose | Var action: TCloseAction | Вызывается для определения действий, которые необходимо произвести при закрытии формы. Указание на вид закрытия возвращается в параметр Action |
Ondestroy | Вызывается при разрушении перед вызовом деструктора |
События создания и разрушения предназначены для выполнения каких-либо специфических действий при переходе Формы из одного состояния в другое. Событие ONpaint, OncloseQuery, OnClose назначены для настройки поведения формы.
При создании формы, её отображении на экране (вне зависимости от используемого метода) и последующем закрытии события происходят в следующей последовательности:
1) OnCreate; 2) Onshow; 3) OnActivate; 4) OncloseQuery 5) OnClose; 6) OnHide; 7) Ondeactivate; 8) Ondestroy;
При создании новой формы в проектировщике появится сразу новая пустая форма. Переключатся между имеющимися в проекте формами можно с помощью комбинации клавиши Shift-F12.
У программы может быть только одна главная форма – эта форма которая появляется при запуске программы и неограниченное число подчиненных форм которые исходно на экране не появляются, а вызываются по команде из программы с помощью специальных методов.