Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 3000555.doc
Скачиваний:
31
Добавлен:
30.04.2022
Размер:
19.12 Mб
Скачать

3. Главная форма

3.1. Свойства главной формы

Классы в Delphi продуманы очень хорошо. Классы обладают достаточно большим количеством преимуществ.

Наследственность— одно из таких преимуществ.

Наследственность — это основа объектно-ориентированного программирования. Даже в самой простой программе приходится встречаться с наследственностью.

Разбираясь с вопросом наследственности нужно уяснить два понятия: предок и потомок. Предок — это класс, от которого происходят другие классы. Потомок— класс, который происходит или порожден из другого. Один объект может быть и потомком, и предком одновременно.

Потомок наследует свойства предка, поэтому всегда знает какие у него свойства, а предок не может знать свойства своего потомка, потому что он не знает, какие свойства будут добавлены в новый класс.

Если посмотреть на структуру всех доступных нам компонентов, то получиться громадное дерево в котором каждый компонент является. предком и потомком одновременно.

Сейчас познакомимся с классом формы и ее свойствами.

Но прежде чем перейти к этому, рассмотрим иерархию классов, от которых происходит форма и свойства которых она наследует

System.TObject — базовый объект для всего;

Classes.TPersistent — класс реализует возможность назначения себя другому классу;

Classes.TComponent — - класс реализует функционал для не визуального компонента;

Controls .TControl — это все визуальные компоненты, которые имеют форму;]

Controls.TWinControl— все компоненты Windows, которые имеют идентификатор, происходят от этого класса;

Forms.TScrollingWinControl— базовый класс для компонентов с возможностью прокрутки;

Forms.TCustomForm — это базовый класс для форм и диалогов.

Перед точкой можно увидеть имя модуля, в котором объявлен класс, а после точки имя класса. Классы перечислены в том порядке, в котором они наследуются, т. е. самый первый идет TObject, его свойства и методы наследует TPersistent. Далее идет TComponent, который наследует свойства и методы TPersistent и TObject.

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

Все визуальные компоненты происходят от TControl, а значит, все они будут обладать его свойствами.

Теперь рассмотрим класс TForm, на основе которого мы будем создавать формы для будущего приложения.

Мы создаем новый класс а TForm, помещаем на него свои компоненты, настраиваем их свойства — и новая форма готова.

В Delphi расстановка элементов управления происходит визуально, и все делается одним нажатием клавиши мыши.

Если выделить какой-то компонент, то в объектном инспекторе появятся его свойства и события.

Рассмотрим основные свойства и события формы.

Это особенно важно, так как большинство из них присутствуют и у компонентов.

Итак, начнем рассмотрение свойств формы.

ActiveControl — указывает на компонент, который должен быть активным по умолчанию.

Align — выравнивание компонента. Любой компонент может быть выровнен по одной из сторон родительского компонента (на поверхности которого он расположен). Этому свойству можно присвоить следующие значения:

AlNоnе — нет выравнивания, как нарисовано, так и будет;

AlBottom — выравнивание по нижнему краю;

ALLeft — выравнивание по левому краю;

AlRight — выравнивание по правому краю;

ALTop — выравнивание по верхнему краю.

Компоненты выравниваются относительно формы, а форма выравнивается относительно экрана.

AlphaBlend (тип свойства— логический)— свойство формы, которое означает имеет ли форма прозрачность. Если это свойство равно true, то окно будет прозрачным.

AlphaBlendValue (тип свойства — целое число) — степень прозрачности формы. Здесь можно задавать числовое значение степени прозрачности от 0 до 255. Если поставить 0, то форма будет абсолютно прозрачной. Числовое значение 255 означает полную непрозрачность.

Чтобы сделать форму полупрозрачной, нужно выставить какое-нибудь промежуточное значение.

Anchors — это свойство есть и у формы, и у компонентов. Оно показывает, как происходит закрепление к родительскому объекту. Это свойство раскрывающееся. Если щелкнуть по квадрату слева от имени свойства, то раскроется список из четырех дополнительных свойств:

akLeft — прикреплять левый край (по умолчанию true);

akTop — прикреплять верхний край (по умолчанию true);

akRight — прикреплять правый край (по умолчанию flase);

akBottom—прикреплять нижний край (по умолчанию false).

По умолчанию прикрепление происходит по левому и верхнему краю. Эти значит, что при изменении размера окна расстояние от компонента до левого верхнего угла не изменяется. Если прикрепить компонент к правой кромке окна, то при изменении размера не изменится расстояние до правой кромки.

Autoscroll (тип свойства— логический)— указывает, будет ли| форма автоматически производить скроллинг, или нет.

Autosize (тип свойства— логический)— если параметр равен true, то форма/компонент будет автоматически подгонять свой размер в соответствии с содержимым.

Bordericons — свойство, определяющее, какие кнопки должны присутствовать у окна. Это свойство раскрывающееся. Если щелкнуть по| квадрату слева от имени свойства, то раскроется список из четырех свойств:

biSystemMenu — показать меню (иконка слева в строке заголовка окна) и другие кнопки заголовка окна;

biMinimize — кнопка минимизации окна;

biMaximize— кнопка максимизации окна;

biHelp — кнопка помощи.

Borderstyle — свойство формы. Отвечает за вид оборки окна. Это свойство может принимать следующие значения:

bsSsizeable— установлено по умолчанию. Стандартное окно с нормальной оборкой, которое может изменять свои размеры;

• bsDialog — окно выглядит в виде диалога;

• bsNone— окно вообще без оборки. У такого окна нет оборки и меню, просто (квадрат с цветом фона) рабочая область;

bsSingle— на первый взгляд это простое окно, но у него нельзя изменить размеры. Оно имеет фиксированный размер, и изменять его мышкой нельзя;

bsSizeToolWin— окно с тонкой оборкой. Особенно это заметно в заголовке окна;

bsToolWindow — оно ничем не отличается от предыдущего. Единственная разница — у этого окна нельзя изменять размеры окна.

Borderwidth — ширина оборки окна. Пока что все окна, которые здесь рассматривались, имели ширину оборки равную нулю.

Caption — это строковое свойство, которое отвечает за заголовок окна

ClientHeight — это свойство в виде целого числа. Показывает высоту клиентской области окна. Высота берется без учета ширины оборки и системного меню, только рабочая область.

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

Color — цвет клиентской области окна.

В списке выбора есть все системные цвета, которые вы можете выбрать Но если вы хотите использовать какой-то специфичный цвет, можете дважды щелкнуть по этому параметру, и перед вами откроется стандартное окно выбора цвета. В этом окне можно выбрать любой цвет. Но лучше использовать системные цвета.

Constraints — в этом свойстве содержатся максимальные и минимальные значения размеров окна. Таким образом, можно ограничить размеры окна, в которых оно будет изменяться. Это свойство раскрывающееся и содержит следующие параметры:

MaxHeight — максимальная высота окна;

Maxwidth — максимальная ширина окна;

MinHeight — минимальная высота окна;

Minwidth — минимальная ширина окна.

Если вы установите эти значения, то окно нельзя будет растянуть больше максимального размера и уменьшить меньше минимального.

Cursor- это свойство отвечает за курсор, который будет отображаться при наведении указателя мыши на форму/компонент. Здесь могут быть доступны несколько форм курсоров.

Docksite — (тип свойства— логический)— указывает, можно ли на форму/компонент бросать другие компоненты с помощью Drag & Drop. когда панели инструментов можно отрывать от формы и прикреплять обратно. Это свойство как раз и разрешает прикреплять компоненты.

DragKind -— вид перетаскивания объекта при Drag & Drop. Здесь доступны два варианта:

dkDrag — стандартный Drag & Drop, при котором объект остается на месте. Этот тип удобен при копировании объектов. Вы как бы перетаскиваете компонент на то место, где должна быть создана копия, но при этом исходный объект остается на месте;

dkDock - - перетаскивает сам объект. Этот параметр следует выбрать, если нужно, чтобы компонент мог прикрепляться к другим компонентам или форме.

DragMode — режим Drag & Drop. Здесь доступны также два варианта:

dmManual - - ручной режим. При таком режиме вы сами должны запускать перетаскивание объекта;

dmAutomatic — режим Drag & Drop. Он будет включаться автоматически, если пользователь начал перетаскивать компонент мышью. При этом не нужно писать дополнительный код, как при ручном режиме.

Enabled— (тип свойства— логический)— определяет доступность компонента. Если это свойство равно true, то пользователь может работать с| этим компонентом. Иначе компонент недоступен, окрашен серым цветом, и вы, как пользователь, не сможете его использовать

Font — шрифт, используемый при выводе текста на форме. Если вы дважды щелкнете по этой строке, то перед вами появится стандартное окне Windows выбора шрифта.

Docksite — (тип свойства— логический)— указывает, можно ли на форму/компонент бросать другие компоненты с помощью Drag & Drop. когда панели инструментов можно отрывать от формы и прикреплять обратно. Это свойство как раз и разрешает прикреплять компоненты.

DragKind -— вид перетаскивания объекта при Drag & Drop. Здесь доступны два варианта:

dkDrag — стандартный Drag & Drop, при котором объект остается на месте. Этот тип удобен при копировании объектов. Вы как бы перетаскиваете компонент на то место, где должна быть создана копия, но при этом исходный объект остается на месте;

dkDock - - перетаскивает сам объект. Этот параметр следует выбрать, если нужно, чтобы компонент мог прикрепляться к другим компонентам или форме. В примере к предыдущему свойству панель имеет именно такое свойство, чтобы могла прикрепиться к форме.

DragMode — режим Drag & Drop. Здесь доступны также два варианта:

dmManual - - ручной режим. При таком режиме вы сами должны запускать перетаскивание объекта;

dmAutomatic — режим Drag & Drop. Он будет включаться автоматически, если пользователь начал перетаскивать компонент мышью. При этом не нужно писать дополнительный код, как при ручном режиме.

Enabled— (тип свойства— логический)— определяет доступность компонента. Если это свойство равно true, то пользователь может работать с| этим компонентом. Иначе компонент недоступен, окрашен серым цветом, и вы, как пользователь, не сможете его использовать

Font — шрифт, используемый при выводе текста на форме. Если вы дважды щелкнете по этой строке, то перед вами появится стандартное окне Windows выбора шрифта.

Formstyle — стиль формы. Здесь доступны для выбора варианты:

fsNormal – нормальное окно;

FsStayOnTop — окно с этим параметром всегда будет находиться поверх остальных.

Height - (тип свойства — целое число) — высота окна.

Hint - (тип свойства — строка) — текст подсказки, который будет появляться в строке состояния при наведении указателя мыши на форму/компонент.

HorzScrollBar — параметры горизонтальной полосы прокрутки.

Icon — иконка, отображающаяся в заголовке окна. Если дважды щелкнуть по этому свойству, то появится окно загрузки иконки. В этом окне есть ряд кнопок:

Load — загрузить иконку из файла;

save — сохранить иконку в файл;

сору — копировать иконку в буфер обмена;

Paste — вставить иконку из буфера обмена;

Clear — очистить текущую иконку.

Left (тип свойства — целое число) — левая позиция окна.

Menu — меню, которое используется в главном окне. Этот параметр стоит рассмотреть отдельно.

Name — имя формы/компонента. Имя, которое здесь укажете, будет использоваться в качестве названия объекта. Если это форма, то в коде будет создан шаблон объекта с таким же именем, но с добавлением в начале имени буквы "Т". Мы с вами уже рассмотрели исходный код, который сгенерировал Delphi для пустого проекта. Там объект назывался TForm1. Обратите внимание, что здесь, а именно в шаблоне, написано From1. Если вы попробуете изменить свойство Name, то и имя объекта в исходном коде изменится.

ParentFont - (тип свойства — логический). Если это свойство равно true, то • для вывода текста оно будет использовать тот же шрифт, что и у родительского объекта. Иначе используется тот, что укажете вы в свойстве Front компонента/окна.

Position - позиция окна при старте приложения. Здесь доступны следующие варианты:

PoDefault — Windows сама будет решать, где расположить окно и какие будут его размеры;

PoDefaultPosOnly - - Windows сама будет решать только, где расположить окно, а размеры его будут такими, какие будут установлены в свойствах;

PoDefaultSizeOnly - Windows будет решать только, какими будут размеры окна, а позиция будет такая, какая укажзана в свойствах;

PoDesigned - - и размер, и позиция будут такими, какими вы укажете в свойствах;

PoDesktopCenter — окно будет располагаться по центру рабочего стола;

PoMainFormCenter - окно будет располагаться по центру основной формы;

PoOwrierFormCenter — окно будет располагаться по центру окна владельца. То есть того окна, которое вызвало это;

FoScreenCenter — окно будет располагаться по центру экрана.

ShowHint (тип свойства — логический) — оно показывает, нужно ли показывать подсказки.

Tag — это свойство имеет тип — целое число. Оно ни на что не влияет, и вы можете его использовать в своих целях.

Tор (тип свойства — целое число). Верхняя позиция окна.

Transparentcolor (тип свойства — логический) — определяет, являются ли форма или компонент прозрачными. В отличие от AlphaBiend, эта прозрачность работает всегда.

TransparentCoiorValue — значение прозрачного цвета.

VertScrollBar— вертикальная полоса прокрутки. Она имеет те же параметры, что и горизонтальная.

Visible_ (тип свойства — логический) — если оно равно true, то форма/компонент видимые. Иначе форма/компонент невидимы.

Width (тип свойства — целое число) — ширина окна.

WindowState — состояние окна после запуска. Здесь доступны следующие параметры:

WsNormal — окно показывается в нормальном состоянии;

WsMaximized — окно показывается максимизированным;

• wsMinimized — окно показывается минимизированным;

На этом обзор свойств формы закончим.