Принцип разработки: есть ли причина отключать TabStop?

В Visual Studio .NET для свойства TabStop по умолчанию установлено значение True для всех команд и полей ввода. У большинства других дизайнеров есть некоторая концепция управления вкладками для «опытных пользователей», которые не любят часто переключаться на мышь.

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

Я слышал, как многие разработчики говорили о том, должно ли каждое поле быть в порядке табуляции. Вот некоторые из аргументов, которые я слышал с обеих сторон:

Всегда включен:

  1. Отключение порядка табуляции для кнопки заставляет пользователя убрать руки с
  2. клавиатуры, чтобы щелкнуть по нему, что замедляет ваш поток.
  3. Microsoft по умолчанию использует значение true по какой-то причине.
  4. Отключенные/скрытые кнопки все равно не получают фокуса.

Иногда выкл.:

  1. Кнопки «Отмена» и «Удалить» должны находиться вне порядка табуляции, чтобы избежать случайного выполнения.
  2. Да, это не порядок табуляции, но вы должны установить мнемонику, чтобы вы могли получить к ней доступ с клавиатуры.

Мой вопрос вращается вокруг хороших принципов дизайна:

  1. Есть ли веская причина отключать TabStop для кнопки Command?
  2. Есть ли веская причина отключать TabStop для поля ввода?

Если бы вы согласились на любой из них, знаете ли вы какие-либо известные примеры программ? например проигрыватель Windows Media? или где-то в панели управления или что-то в качестве примера поля/кнопки без табуляции?


person Jrud    schedule 10.11.2009    source источник
comment
Так это действительно ответ? Да, все в порядке; но никто не может найти хороший пример.   -  person Jrud    schedule 24.11.2009


Ответы (1)


Конечно. Microsoft Outlook. Вы перемещаетесь по полям «Кому», «Копия» и другим полям, но не имеете позиции табуляции на полосах инструментов (или на кнопках «Кому...» и «Копия...», если уж на то пошло).

В моем макете поместите курсор в текстовое поле «Кому», нажмите вкладку и перейдите к текстовому полю «CC». Tab снова, чтобы перейти к текстовому полю темы, и, наконец, следующая вкладка помещает вас в тело письма (где TAB просто вставляет вкладку в тело).

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

Есть много приложений, где это сделано, и это для удобства использования. Часто бывает необходимо удалить позиции табуляции.

person David    schedule 10.11.2009
comment
На самом деле, на кнопках To... и Cc... есть позиции табуляции: они стоят перед позициями табуляции для соответствующих полей. Shift-Tab из поля «Кому» сфокусирует кнопку «Копия...», а другой Shift-Tab — кнопку «Кому». - person ephemient; 11.11.2009
comment
Панель инструментов также имеет порядок табуляции, хотя вы не можете добраться до нее через обычный порядок табуляции. Это как если бы табуляция была включена только для этих элементов управления, если ваш курсор уже находится на панели инструментов. - person Jrud; 11.11.2009
comment
Я тоже так думал, но я попробовал, и табуляции нет в версии Outlook, которую я использую (2003). Я знаю, что позиции табуляции были в других версиях, поэтому мне интересно, изменилось ли это. - person David; 11.11.2009
comment
Могут быть определенные причины, по которым у элемента управления нет табуляции. Но получают ли люди с ограниченными возможностями пользу или ожидают, что табуляция будет там? - person ElGringoGrande; 11.11.2009
comment
ХА-ХА Я думаю, что только что доказал свою точку зрения ... Я пытался работать с порядком вкладок на странице Outlook, и я случайно нажал на кнопку отправки и отправил пустое электронное письмо под названием: Adof моему коллеге и начальнику. - person Jrud; 11.11.2009
comment
@el.gringogrande - хорошая мысль. Думаю, я работаю в довольно контролируемой среде и еще не сталкивался с этим. Доступность — одно из моих слабых мест. - person David; 11.11.2009