Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

При создании баз данных необходимо дописать 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.

У программы может быть только одна главная форма – эта форма которая появляется при запуске программы и неограниченное число подчиненных форм которые исходно на экране не появляются, а вызываются по команде из программы с помощью специальных методов.




Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 269; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.