Список единичного выбора
Список единичного выбора (Single Selection List Box) используется для выбора только одного пункта в списке. Следовательно, такой элемент управления реализует функцию взаимного исключения, подобно группе переключателей, за исключением того, что список позволяет более эффективно оперировать большим количеством пунктов.
Размер (высота) панели списка единичного выбора обычно выбирается таким образом, чтобы в нем можно было показать от трех до восьми пунктов (рис. ). Всегда включайте в окно списка вертикальную полосу прокрутки. Если все пункты в списке видимы, то стрелки полосы прокрутки следует заблокировать; в остальном правила использования полосы прокрутки остаются прежними.
Пользователь может выбрать требуемый пункт в списке единичного выбора, щелкнув на нем ЛКМ. Фокус ввода также устанавливается на этом пункте. Поскольку список рассматриваемого типа поддерживает выбор только единственного пункта, при изменении выбора любой другой пункт в списке становится невыбранным.
Для реализации клавиатурного интерфейса при работе со списком используются клавиши навигации (клавиши управления курсором, <Home>, <End>, <PgUp> и <PgDown>). Могут также использоваться текстовые клавиши, обеспечивающие синхронное сопоставление вводимых символов с символами пунктов списка. Эти клавиши не только управляют прокруткой списка, но также выполняют выбор соответствующего пункта. Если в результате поиска ни один пункт в списке оказался не выбран, то выбранным считается пункт в списке, определяемый действием текущей клавиши навигации. Например, если пользователь нажимает клавишу <Home>, то выбранным становится первый элемент в списке.
Если пункты списка представляют собой значения некоторого свойства объекта, то в списке выделяется текущее значение этой характеристики для выбранного объекта. Если же выбрана группа объектов, имеющих различные значения этой характеристики, то ни один пункт в списке не должен быть выделен.
Выпадающий список
Подобно списку единичного выбора, выпадающий список (Drop-down List Box) предусматривает возможность выбора единственного пункта; различие заключается в том, что выпадающий список отображается на экране только по требованию пользователя. Когда список закрыт (точнее, свернут), в его окне отображается только выбранный пункт. Чтобы изменить выбор, пользователю необходимо открыть список. Рис. 5.19 показывает выпадающий список в закрытом и открытом состоянии.
Хотя выпадающий список представляет собой эффективный способ экономного использования пространства окна, он вместе с тем требует от пользователя дополнительных действий для просмотра и выбора пункта по сравнению со списком единичного выбора.
Ширина окна свернутого выпадающего списка должна быть на несколько пробелов больше средней ширины пунктов в списке. В открытом состоянии окно списка должно быть достаточно высоким для того, чтобы показать три — восемь пунктов. Вместе с тем, свободное пространство в окне должно позволять не только отобразить выбор в списке, но также выполнять пользователю операции прямого манипулирования.
Взаимодействие пользователя с выпадающим списком подобно работе с выпадающим меню. Например, чтобы отобразить список, пользователь может щелкнуть ЛКМ на кнопке меню, а выбор пункта приводит к автоматическому закрытию списка; выбор пункта, как и в меню, выполняется щелчком ЛКМ в соответствующей строке.
Пользователь может также работать с выпадающим списком, используя клавишу доступа и клавиши управления курсором. При нажатии клавиши доступа, клавиши <Таb> или клавиш <PgUp>, < PgDown>, а также двух последних клавиш в сочетании с клавишей <Alt>, выпадающий список открывается. Клавиши управления курсором и текстовые клавиши обеспечивают одновременно навигацию и выбор пункта в списке. Если пользователь нажимает клавиши <PgUp>+<Alt>, <PgDown >+<Alt>, клавишу <Tab>, или клавишу доступа, чтобы перейти на другой элемент интерфейса, список автоматически закрывается. Клавиша <Esc> также закрывает список. При закрытии списка сделанный в нем выбор должен сохраняться.
Если пункты списка представляют собой значения некоторой характеристики объекта, то в списке выделяется текущее значение этой характеристики для выбранного объекта. Если же выбрана группа объектов, имеющих различные значения этой характеристики, то ни один пункт в списке не должен быть выделен.