Урок 6. Установка порядка обхода.

В приложении, во время работы, только один оконный, управляющий элемент может в данный момент принимать клавиатурный ввод. Этот элемент имеет фокус ввода.

Что бы произвести передачу фокуса ввода другому элементу нужно сделать щелчок мыши на другом оконном, управляющем элементе или же воспользоваться клавишей Tab или Shift+Tab. С помощью клавиатуры фокус ввода последовательно передается от одного оконного элемента к другому. Причём используя клавишу Tab происходит перебор в прямом порядке очередности, а с клавишами Shift+Tab – в обратном.

Если мы разместим на форме оконные компоненты (класс WinControl и его потомки, компоненты которые могут получать фокус ввода), то при нажатии клавиши табуляции компоненты будут в строгом порядке получать фокус. Определяет этот порядок свойство TabOrder.

Delphi при разработке формы автоматически присваивает номера компонентам согласно которым будет осуществлен обход. Нумерация начинается с 0 второй компонент будет иметь свойство TabOrder равным 1. При активизации нулевой компонент первым получит фокус.

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

TabOrder задание значения

Свойство TabOrder не может быть одинаковым для двух разных компонентов. Но мы может устанавливать значение этого свойства, не думая об учете других компонентов, т. к. Delphi автоматически корректирует неправильные значения, перенумеровывая неподходящие значения. Задать свойство TabOrder можно установив над компонентом мышь и нажав правую кнопку.

Изменения порядка табуляции

Затем выбрать элемент TabOrder (он на рисунке выделен). Появиться редактор Edit Tab Order (вид справа), в котором элементы идут по убывающей. Самый верхний элемент будет иметь более высокий приоритет. С помощью кнопок синих стрелок верх и вниз, мы можем изменить порядок следования элементов.

Свойство TabOrder Свойство TabOrder связано со свойством TabStop (типа Boolean). При TabStop равным TRUE, компонент будет получать фокус, при False - нет.

Пример урока

Сделайте такую форму (рис. слева) и попробуйте поменять различные значения свойств, которые мы сейчас изучили.

Загрузите приложение и нажимая клавиши Tab, прямой проход и Tab + Shift - обратный проход, пройдитесь по компонентам.

Итог: мы разобрали свойство TabOrder и его значение в порядке обхода компонентов.

Понравилась статья? Раскажите друзьям:
Общайтесь со мной

Оставить комментарий

Ваш email не будет опубликован. Обязательные поля отмечены *

Вы можете использовать это HTMLтеги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>