Russian Belarusian English German Japanese Ukrainian

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

CuBook55

Компонент UpDown превращает окно редактирования Edit в компонент, в котором пользователь может выбирать целое число, изменяя его кнопками со стрелками. Если к тому же установить в true свойство окна ReadOnly, то пользователь просто не сможет ввести в окно какой-либо свой текст и вынужден будет ограничиться выбором числа.
Компонент CSpinEdit представляет собой сочетание Edit и UpDown, оформленное как отдельный тип компонента.
 
Компонент UpDown
Основное свойство компонента UpDown - Associate, связывающее кнопки со стрелками с одним из оконных компонентов, обычно с Edit. Чтобы опробовать компонент UpDown, перенесите на форму его и окно редактирования Edit, расположив Edit там, где это требуется, a UpDown - в любом месте формы. Далее в выпадающем списке свойства Associate компонента UpDown выберите Edit1. Компонент UpDown немедленно переместится к Edit и как бы сольется с ним.
 
Свойство AlignButton компонента UpDown, которое может принимать значения udLeft или udRight, определяет, слева или справа от окна будут размещаться кнопки.
Свойство Orientation, которое может принимать значения udHorizontal или udVertical, определяет, расположатся ли кнопки по вертикали (одиа под другой) или по горизонтали (одна рядом с другой).
Свойство ArrowKeys определяет, будут ли управлять компонентом клавиши клавиатуры со стрелками.
Свойство Thousands определяет наличие или отсутствие разделительного пробела между каждыми тремя цифрами разрядов вводимого число Thonsands = true.
Свойства Min и Мах компонента UpDown задают соответственно минимальное и максимальное значения чисел.
Свойство Increment задает приращение числа при каждом нажатии на кнопку.
Свойство Position определяет текущее значение числа. Это свойство можно читать, чтобы узнать, какое число задал пользователь. Его можно задать во время проектирования в диапазоне Min-Мах. Тогда это будет значение числа по умолчанию, отображаемое в окне в начале выполнения приложения.
Свойство Wrap определяет, как ведет себя компонент при достижении максимального или минимального значений. Если Wrap = false, то при увеличении или уменьшении числа до максимального или минимального значения это число фиксируется на предельном значении и нажатие кнопки, пытающейся увеличить максимальное число или уменьшить минимальное, ни к чему не приводит. Если же Wrap = true, то попытка превысить максимальное число приводит к его сбросу на минимальное значение. Аналогично, попытка уменьшить минимальное число приводит к его сбросу на максимальное значение. Т.е. изменение чисел «закольцовывается».
Если в компоненте Edit, связанном с UpDown, не задать ReadOnly равным true, то пользователь сможет редактировать число, не пользуясь кнопками со стрелками. Это удобно, если требуемое число далеко от указанного по умолчанию, а шаг приращения Increment в UpDown мал. Но тут проявляется серьезный недостаток компонента UpDown: ничто не мешает пользователю ввести по ошибке не цифры, а какие-то другие символы. Можно избавиться от этого недостатка, используя прием, который не дает возможность пользователю ввести в окно редактирования какие-то символы, кроме цифр. Но лучше для этих целей использовать компонент CSpinEdit.
 
Компонент CSpinEdit
Свойства компонента CSpinEdit похожи на UpDown, но только имеют другие имена: свойства Min, Max, Position называются соответственно MinValue, MaxValue, Value. В целом компонент CSpinEdit во многих отношениях удобнее простого сочетания UpDown и Edit. Так что, если не требуются какие-то из описанных выше дополнительных возможностей UpDown (нестандартное расположение кнопок, «закольцовывание» изменений и т.п.), то лучше пользоваться компонентом CSpinEdit.
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий


Защитный код Обновить