КАТЕГОРИИ: Архитектура-(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) |
Отображение и выбор значения поля
Отображение и редактирование значения логического поля Логическое поле (поле логического типа) может содержать одно из двух значений: true (истина) или false (ложь). Разрешается использование прописных букв и сокращение вводимого значения, т. е. допустимы значения True, true, tru, Tr, t и т. д. Для отображения и изменения значения логического поля можно использовать редактор DBEdit. Однако удобнее выполнять эти действия с помощью переключателя DBCheckBox, который позволяет "включить" или "выключить" значение логического поля. Переключатель DBCheckBox является аналогом рассмотренного ранее компонента CheckBox, поэтому здесь мы остановимся только на свойствах, характерных именно для этого переключателя. Компонент DBCheckBox выглядит на экране как квадрат (флажок) с текстовым заголовком (рис. 8.1). Если в нем находится галочка (при этом говорят, что флажок "включен" или "отмечен"), то связанное с этим переключателем логическое поле текущей записи содержит значение True. Если же квадрат пуст (флажок выключен), то логическое поле текущей записи содержит значение False. Переключатель DBCheckBox можно применять также для отображения и редактирования строковых полей, если воспользоваться свойствами ValueChecked и ValueUnChecked. Свойство ValueChecked типа string содержит строковые значения, которые устанавливают связанный с этим полем переключатель во включенное состояние. Отдельные значения разделяются точкой с запятой. В качестве значений допускаются любые алфавитно-цифровые символы, в том числе русские буквы. Регистр алфавитных символов не различается, т. е. значения ДА и да считаются одинаковыми. Например: DBCheckBoxl.ValueChecked: ='True;T;Yes; Y;Да;Д'; Свойство ValueUnChecked типа String содержит строковые значения, которые устанавливают связанный с этим полем переключатель в выключенное состояние. Значения задаются таким же образом, как и для свойства ValueChecked: DBCheckBoxl.ValueUnChecked:='False;F;No;N;Нет;Н'; Если поле не содержит ни одного из значений, указанных в свойствах ValueChecked и ValueUnChecked, то переключатель устанавливается в неопределенное состояние. Отметим, что несмотря на наличие приведенных свойств, возможности переключателя DBCheckBox по редактированию строковых полей намного меньше, чем у элемента DBEdit. В ряде случаев возникает необходимость ввода или отображения в поле одного из значений, входящих в состав фиксированного набора. С этой целью удобно использовать компонент DBRadioGroup (рис. 8.1), представляющий собой группу зависимых переключателей, из которых в каждый момент времени может быть включен (выбран) только один. Зависимые переключатели также называют кнопками выбора; на форме они отображаются в виде круга с текстовой надписью. Рис. 8.1. Использование переключателей
Отметим, что выбрать для поля одно из значений можно также с помощью списков, которые представляют для этих целей более широкие возможности. Управление числом и названиями переключателей производится с помощью свойства Items типа TStrings, позволяющего получить доступ к отдельным переключателям в группе. Это свойство содержит строки, отображаемые как заголовки переключателей. Отсчет строк в массиве начинается с нуля: Items [0], Items [1] и т. д. Обычно задание значений этому свойству выполняется при разработке приложения с помощью Редактора строк. При выполнении приложения для манипуляции со строками (заголовками) можно использовать такие методы, как Add и Delete. Свойство Values типа TStrings содержит список значений поля, на которые должны реагировать переключатели группы. Управление этим списком осуществляется аналогично управлению списком items. Если возможные значения свойства values не заданы, то они выбираются из значений свойства items, т. е. в этом случае значение, соответствующее переключателю, совпадает с названием этого переключателя. Группа переключателей работает следующим образом. Переключатель включается при переходе к очередной записи, если значение связанного с ним поля содержит одно из значений, присутствующих в списке Values. Если же поле содержит значение, отсутствующее в списке возможных, то ни один переключатель не выбирается. Изменение значения поля происходит при выборе другого переключателя группы. Замечание Для поля, с которым связана группа переключателей, пользователь может выбрать значение только из списка. Попытки ввести в поле произвольное значение, например с помощью компонента DBGrid, блокируются. В примере, приведенном на рис. 8.1, группа переключателей имеет заголовок Условия продажи и связана с полем Note набора данных. При перемещении на шестую запись в группе автоматически выбирается третий переключатель, имеющий название (и такое же значение) Оптом и в розницу. Если выбрать другой переключатель, например первый, то в поле Note шестой записи автоматически занесется новое значение — Оптом. Замечание Новое значение поля будет зафиксировано в наборе данных и отображено другими визуальными компонентами (DBGrid и подобными) после потери фокуса группой переключателей, например, в связи с переходом к другой записи. Доступ к отдельному переключателю можно получить через свойство itemindex типа integer, содержащее позицию (номер) переключателя, выбранного в группе в текущий момент. Это свойство используется для выбора отдельного переключателя или для определения, какой из переключателей является выбранным. Если свойство itemindex имеет значение -1, то не выбран ни один из переключателей. Замечание При программном выборе переключателя необходимо переводить набор данных в режим редактирования, а после установки нового значения поля закреплять сделанные изменения, например, вызовом метода Post. Вот пример, иллюстрирующий выбор переключателя на программном уровне: procedure TForml.ButtonlClick(Sender: TObject);
Дата добавления: 2014-01-11; Просмотров: 515; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |