Компоненты VCL Delphi. Отображение и ввод чисел, дат и времени. Отображение иерархических данных. Системные диалоги

Страницы работы

Содержание работы

2.2.2 Отображение и ввод чисел, дат и времени

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

Ввод и отображение целых чисел

Компонент UpDown  (страница Win32) превращает окно редактирования Edit в компонент, в котором можно выбирать целое число, изменяя его кнопками со стрелками. Если установить свойство ReadOnly компонента Edit в True, то пользователь не сможет ввести какое-либо значение, не используя UpDown.

Основное свойство компонента – Associate, связывающее кнопки со стрелками с одним из оконных компонентов, обычно Edit.

Свойство AlignButton определяет, слева (udLeft) или справа (udRight) относительно компонента будут размещаться кнопки. Свойство Orientation определяет, расположатся кнопки по вертикали (udVertical) или по горизонтали (udHorizontal). Свойство ArrowKeys определяет, будут ли управлять компонентом клавиши клавиатуры со стрелками.

Свойство Min и Max задают минимальное и максимальное значение чисел, свойство Increment задает приращение (по умолчанию 0, 100, 1).

Задание:

1.  Начните новый проект InputInt;

2.  На форме расположите компоненты, как на рис. 2.11;

Рисунок 2.11

3.  Задайте для имеющихся компонентов свойства, представленные в табл. 2.8;

Таблица 2.8

Компонент

Свойство

 Значение

LabeledEdit1

EditLable.Caption

Масса, кг (0..100)

UpDown1

Associate

LabeledEdit1

LabeledEdit2

EditLable.Caption

Температура по Цельсию  (-50..+50)

UpDown2

Associate

LabeledEdit2

Min

-50

Max

50

Text

20

Align

udLeft

LabeledEdit3

EditLable.Caption

Номер операции

ReadOnly

True

Text

5

UpDown3

Associate

LabeledEdit3

Min

5

Max

1000

Increment

5

Orientation

udHorizontal

StaticText1

Caption

50

UpDown4

Associate

StaticText1

4.  Запустите программу и проверьте ее работу (рис. 2.12).

Рисунок 2.12

Компонент SpinEdit  (страница Samples) представляет собой сочетание Edit и UpDown. Если не требуется нестандартное расположение кнопок и т.п., то данный компонент удобнее в применении.

Основные свойства компонента SpinEdit имеют другие имена: MinValue, MaxValue, Value.

Задание:

1.  Продолжите проект InputInt;

2.  На форму добавьте компоненты SpinEdit, Button и Label, как на рис. 2.13;

Рис. 2.13

3.  Задайте для добавленных компонентов свойства, представленные в табл. 2.9;

Таблица 2.9

Компонент

Свойство

 Значение

SpinEdit1

Value

10

Buttom1

Caption

Выполнить

Label1

Caption

4.  Для кнопки создайте обработчик события OnClick (рис. 2.14);

Рисунок 2.14

5.  Запустите программу и проверьте ее работу (рис. 2.15).

Рисунок 2.15

Ввод и отображение дат и времени

Наиболее удобным компонентом для ввода даты и времени является DateTimePicker  (страница Win32). Компонент обеспечивает безошибочный с точки зрения синтаксиса ввод дат и времени.

Основное свойство Kind определяет режим работы: dtkDate - ввод даты, dtkTime - ввод времени.

При вводе дат можно задать свойство DateMode равным dmComboBox – наличие выпадающего календаря, или равным dmUpDown – наличие кнопок увеличения и уменьшения.

Формат представления дат определяется свойством DateFormat, которое может принимать значения dfShot – краткий формат, или dfLong – полный формат.

При работе с датой и временем необходимо учитывать особенности типа TDateTime, представляющего собой число с плавающей запятой, целая часть которого содержит число дней, отсчитанной от некоторого начала календаря, а дробная часть равна части 24-часового дня, т.е. характеризует время и не относится к дате. За начало календаря принята дата 12/30/1899 00 часов.

Похожие материалы

Информация о работе