Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по дисциплине Объектно-ориентирован...doc
Скачиваний:
33
Добавлен:
01.07.2025
Размер:
14 Мб
Скачать
☆

Лекция №15 Тема: Ввод и отображение чисел, дат и времени

План:

  1. Классификация компонентов ввода и отображения чисел, дат и времени

  2. Основные свойства, события и методы компонентов UpDown и SpinEdit

  3. Основные свойства, события и методы компонента DateTimePicker

  4. Основные свойства, события и методы компонентов MonthCalendar и Calendar

  5. Компонент F1Book

1. Классификация компонентов ввода и отображения чисел, дат и времени

В библиотеке визуальных компонентов Delphi существует ряд компонентов, позволяющих вводить, отображать и редактировать числа, даты и время (см. табл. 16).

Таблица 16

Компоненты ввода и отображения чисел, дат и времени

Компонент

Страница

Описание

UpDown

(кнопка-счетчик)

Win32

Кнопка-счетчик в стиле Windows 95/98, в сочетании с компонентами Edit и другими позволяющая вводить цифровую информацию. Основное свойство — Position

SpinEdit

(кнопка-счетчик с окном редактирования)

Samples

Окно редактирования в комбинации с кнопкой-счетчиком. Основное свойство — Value.

DateTimePicker

(окно ввода дат и времени)

Win32

Ввод даты (с выпадающим календарем) и времени. Основные свойства — Date и Time

MonthCalendar

(окно ввода дат)

Win32

Ввод дат с выбором из календаря

Calendar

(календарь на указанный месяц)

Samples

Отображение календаря на указанный месяц. Компонент DateTimePicker имеет больше возможностей по вводу дат, чем этот компонент. Основные свойства — Month и Day

FIBook

(страницы Excel)

ActiveX

Компонент ввода и обработки числовой информации, аналогичный страницам Excel

2. Основные свойства, события и методы компонентов UpDown и SpinEdit

В Delphi имеются специализированные компоненты, обеспечивающие ввод целых чисел — UpDown и SpinEdit. (см. рис. 34)

рис. 34. Компоненты UpDown и SpinEdit

Компонент UpDown превращает окно редактирования Edit в компонент, в котором пользователь может выбирать целое число, изменяя его кнопками со стрелками. Если к тому же установить в true свойство окна Readonly, то пользователь просто не сможет ввести в окно какой-либо свой текст, и вынужден будет ограничиться выбором числа. Компонент SpinEdit представляет собой сочетание Edit и UpDown, оформленное как отдельный тип компонента.

Основное свойство компонента UpDown — Associate, связывающее кнопки со стрелками с одним из оконных компонентов, обычно с Edit. Чтобы опробовать компонент UpDown, перенесите на форму его и окно редактирования Edit, расположив Edit там, где это требуется, a UpDown — в любом месте формы. Далее в выпадающем списке свойства Associate компонента UpDown выберите Editl. Компонент UpDown немедленно переместится к Edit и как бы сольется с ним.

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

Свойства Min и Мах компонента UpDown задают соответственно минимальное и максимальное значения чисел, свойство Increment задает приращение числа при каждом нажатии на кнопку. Свойство Position определяет текущее значение числа. Это свойство можно читать, чтобы узнать, какое число задал пользователь. Его можно задать во время проектирования в диапазоне Min — Мах. Тогда это будет значение числа по умолчанию, отображаемое в окне в начале выполнения приложения.

Свойство Wrap определяет, как ведет себя компонент при достижении максимального или минимального значений. Если Wrap = false, то при увеличении или уменьшении числа до максимального или минимального значения это число фиксируется на предельном значении и нажатие кнопки, пытающейся увеличить максимальное число или уменьшить минимальное, ни к чему не приводит. Если же Wrap = true, то попытка превысить максимальное число приводит к его сбросу на минимальное значение. Аналогично, попытка уменьшить минимальное число приводит к его сбросу на максимальное значение. Т.е. изменение чисел «закольцовывается ».

Если в компоненте Edit, связанном с UpDown, не задать ReadOnly равным true, то пользователь сможет редактировать число, не пользуясь кнопками со стрелками. Недостаток компонента UpDown – это возможность пользователю ввести по ошибке не цифры, а какие-то другие символы.

Свойства компонента SpinEdit похожи на рассмотренные, только имеют другие имена: свойства Min, Max, Position называются соответственно MinValue, MaxValue, Value. В целом компонент SpinEdit во многих отношениях удобнее простого сочетания UpDown и Edit.