Опрос про "контекстное меню"

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Опрос про "контекстное меню"

Сообщение Proxy » 16.09.2014 (Вт) 7:40

Доброго времени суток.

Интересует мнение про концепции, поведение и внешний вид различных всплывающих меню в различных системах и различном прикладном ПО (не обязательно один вариант ответа).

  1. Удобная форма popup menu
    1.1 Прямоугольный вертикальный список
    1.2 Двумерная таблица
    1.3 Круг, деленный на несколько секторов (и тач и мышь; и прямоугольный экран и экран произвольной формы)
    1.4 Иное
  2. Уместен ли скроллинг в меню
    2.1 Скроллинг со скроллбаром (скрывается при отсутствии необходимости)
    2.2 Скроллинг со скроллбаром (виден всегда)
    2.3 Скроллинг со скроллбаром (при необходимости отображается правее/левее списка, не влияет на ширину списка)
    2.4 Скроллинг по положению курсора (при приближении к границе)
    2.5 Скроллинг по положению курсора (непрерывный)
    2.6 Скроллинг для тач-интерфейса с закольцовыванием меню
    2.7 Скроллинг для тач-интерфейса с явными границами (по достижении границы останавливать скроллинг)
    2.8 Скроллинг для тач-интерфейса с явными границами (по достижении границы отрывать список от границы экрана до отрыва пальца, затем притягивать; кинетическая прокрутка без отрыва от границы экрана)
    2.9 Скроллинг для тач-интерфейса с явными границами (по достижении границы отрывать список от границы экрана до отрыва пальца, затем притягивать; кинетическая прокрутка отрывает список от границы экрана до остановки, затем плавно подтягивает к границе)
    2.10 Скроллинг не уместен (ограничение числа элементов)
    2.11 Скроллинг не уместен (добавляются ряды; кольцевое меню превращается в спираль)
    2.12 Скроллинг не уместен (уменьшение размеров элементов)
  3. Popup menu в тач-интерфейсе
    3.1 Уместно, вызывается длительным нажатием (как везде)
    3.2 Уместно, вызывается хардварной кнопкой (отдельной)
    3.3 Уместно, вызывается иным способом
    3.4 Не уместно
  4. Поведение при переходе на уровень ниже, в ситуации, когда курсор "съехал" с родительского элемента
    4.1 Немедленно закрыть подменю, открыть другое
    4.2 Закрытие с задержкой по времени
    4.3 Сложный алгоритм отслеживания траектории курсора
    4.4 Метод разделения hit area на трапеции (или аналогию для кольцевого меню)
    4.5 Закрывать подменю только по клику на другом родителе
    4.6 Иное
  5. Позиция меню (для вертикального списка)
    5.1 Левый верхний угол по позиции курсора
    5.2 Y=0%, X=50%
    5.3 Центр по позиции курсора (нажатия)
    5.4 Меню на весь экран
  6. Разнообразие меню
    6.1 ОС должна иметь строгий один стиль контекстного меню
    6.2 ОС должна иметь несколько типов контекстного меню в зависимости от контекста (от предпочтений разработчика)
    6.3 ОС должна иметь несколько типов контекстного меню в зависимости от предпочтений пользователя
    6.4 Каждый разработчик может придерживаться собственного стиля для контекстного меню
  7. Цветовые коды фона элементов меню, цвета надписей
    7.1 Не уместны
    7.2 Не уместны, в т.ч. значки должны быть ч/б
    7.3 Уместны для сопоставления элементов меню с клавишами навигации (хардварными, если имеются) или с жестами
    7.4 Уместны для дублирования контекста (например красный — удалить, синий — обратимое действие или вызов справки и т.п), стандартизованного для системы (в т.ч. цвета значков)
    7.5 Уместны для дублирования контекста, не стандартизованы
    7.6 Уместны для иных целей
  8. Значки и надписи в контекстном меню
    8.1 Никаких значков, только надписи
    8.2 Никаких надписей, только значки (только системные)
    8.3 Никаких надписей, только значки (на усмотрение разработчика прикладного ПО)
    8.4 На усмотрение разработчика
    8.5 На усмотрение пользователя
  9. Состав меню
    9.1 Определяется только разработчиком
    9.2 Кастомный (без документации, в документации все меню без иерархии или иное)
    9.3 Кастомный (в документации вариант по умолчанию)
  10. Надписи, не уместившиеся в границы элемента списка
    10.1 Обрезать (в т.ч. при локализации)
    10.2 Горизонтальная прокрутка
    10.3 Только всплывающая подсказка и ничего для тачскрина
    10.4 Ширина списка по размеру надписей (изменяемое при локализации, например)
    10.5 Перенос в несколько строк
  11. Положение значков/надписей в круговом меню
    11.1 Радиально (нижние элементы перевернуты)
    11.2 Радиально (флип в заданном диапазоне углов)
    11.3 Горизонтальное положение надписей, значки без поворота
    11.4 Горизонтальные и вертикальные направления текста
  12. Секторы кругового меню
    12.1 Верхний уровень — полный сектор, остальные — усеченный кругом
    12.2 Все секторы полные, без наружной границы (до границ экрана)
    12.3 Все секторы полные, есть наружная граница
  13. Выбор пункта кругового меню
    13.1 Наведение курсора на пункт (нажатие пальцем)
    13.2 Указатель и вращающийся круг (нажатие пальцем активирует пункт под пальцем; "перетаскивание" (слайд) вращает круг, отрыв пальца активирует; указатель неподвижен, как на дисковых телефонных аппаратах)
    13.3 Пункт под курсором активируется без клика (с задежкой)
  14. Подменю кругового меню
    14.1 Размещается центром на курсоре / центре выбранного родительского сектора
    14.2 Описывает меню более высокого уровня (в т.ч. для меню без указателя), т.е. центры меню всех уровней совпадают
  15. Кнопки громкости, когда в фокусе контекстное меню
    15.1 Перемещают курсор по меню (вращают круговое меню)
    15.2 Регулируют громкость

P.S. "Опрос" сделать не могу, т.к. количество вариантов ответа ограничено 20, количество вариантов ответов при голосовании тоже ограничено.
Follow the white rabbit.

pronto
Постоялец
Постоялец
 
Сообщения: 597
Зарегистрирован: 04.12.2005 (Вс) 6:20
Откуда: Владивосток

Re: Опрос про "контекстное меню"

Сообщение pronto » 16.09.2014 (Вт) 11:40

1.1 Прямоугольный вертикальный список
2.4 Скроллинг по положению курсора (при приближении к границе), 2.7 Скроллинг для тач-интерфейса с явными границами (по достижении границы останавливать скроллинг)
3.1 Уместно, вызывается длительным нажатием (как везде)
4.5 Закрывать подменю только по клику на другом родителе
5.3 Центр по позиции курсора (нажатия)
6.1 ОС должна иметь строгий один стиль контекстного меню
7.4 Уместны для дублирования контекста (например красный — удалить, синий — обратимое действие или вызов справки и т.п), стандартизованного для системы (в т.ч. цвета значков)
8.5 На усмотрение пользователя
9.3 Кастомный (в документации вариант по умолчанию)
10.5 Перенос в несколько строк
11.3 Горизонтальное положение надписей, значки без поворота
12.3 Все секторы полные, есть наружная граница
13.3 Пункт под курсором активируется без клика (с задежкой)
14.2 Описывает меню более высокого уровня (в т.ч. для меню без указателя), т.е. центры меню всех уровней совпадают
15.2 Регулируют громкость
O, sancta simplicitas!

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 16.09.2014 (Вт) 12:53

1.1 Прямоугольный вертикальный список. Это если говорить об обычных программах. Если речь об играх или приложениях для телефона, то там возможны варианты.
2. Уместен ли скроллинг в меню? По возможности избегать. Если уж избежать не удалось, то несколько столбцов или скроллбар предпочтительнее кнопок вверх/вниз. Особенно косяк со стандартным меню в Windows, когда кнопка вверх оказывается на заголовке максимизированного окна и два щелчка по ней часто обрабатываются как двойной щелчок по заголовку, что меняет размер окна - это вообще жуть. Сейчас немного подумал, и решил, что столбцы поудобнее, однако, есть ещё вариант, когда они по горизонтали влазить перестают. Да, ещё. Скроллбар vs кнопки: скроллбар можно перетащить в нужное место, если представляешь, где нужный пункт меню, а кнопки прощёлкивать гораздо дольше.
3.1 Уместно, вызывается длительным нажатием (как везде)
4. Поведение при переходе на уровень ниже, в ситуации, когда курсор "съехал" с родительского элемента. Точно не закрывать сразу. Меня вполне устраивает вариант с задержкой. причин считать, что вариант с траекторией не устрот нет. Так что один из них. Но я всё-таки за задержку, а то вдруг вложенное меню длинное...
5.1 Левый верхний угол по позиции курсора
6.1 ОС должна иметь строгий один стиль контекстного меню. Скорее так, хотя определённые отклонения, сделанные разработчиком вполне допускаю. Т. е. главное, чтобы не создавалось ощущение, что меню является чем-то иным. А то есть распространённая охапка отклонений, которые жутко бесят.
7. Цветовые коды фона элементов меню, цвета надписей. Уместны. Иконки обязательно цветные. Одноцветные иконки бесполезны.
8. Значки и надписи в контекстном меню. 8.4 На усмотрение разработчика. Хотя я за наличие иконок (обязательно цветных!) - по ним проще ориентироваться. Но это всё-таки не значит, что иконки обязаны быть прямо у каждого пункта меню.
9. Состав меню. 9.1 Определяется только разработчиком. Если речь идёт именно о меню приложения, причём не о ленте. Если лента и приложение достаточно большое, то кастомизация обязана быть. Если контекстное меню, то кастомизация тоже может быть уместна, в зависимости от специфики приложения. Если говорить о кастомизации обычного меню приложения, то тут скорее возможность добавлять пункты. Перераспределение пунктов по меню - немного странновато - я бы такую функциональность постарался запрятать подальше от обычных пользователей. Да, справка по дефаултному размещению, либо интерактивная по текущему. Ну и поиск по ней, конечно же. Мохно ещё поиск команды реализовать как в XYPlorer'е.
10.4 Ширина списка по размеру надписей (изменяемое при локализации, например). Но должна быть минимальная ширина. Скорее всего, ещё стоит и максимальную задать, если больше, то многоточие и показывать тултип при наведении. И да, многоточие должно быть до хоткея, т. е. вариант, когда хоткей не помещается из-за слишком длинного текста - это фигня.
15.2 Регулируют громкость

Ещё про меню:
  • Никаких кнопок "показать ещё" - меню должно быть полным с открытия. И оно не должно переупорядочиваться по частоте использования. Если уж я полез в меню, а не воспользовался хоткеем или кнопкой на панели, значит меня вряд ли волнует частоиспользуемый пункт, а уж искать его в меняющемся списке - вообще гадость. При этом вполне может быть пункт типа повторить последний эффект (его текст можно менять в соответствии с действием), тогда его стоит размещать в верхней строке, причём без влияния на остальные пункты.
  • Зацикленность при нажатии стрелок вверх/вниз на клавиатуре (т. е. переход первый <-> последний).
  • Возможность кликнуть пункт меню (особенно контекстного) правой кнопкой, а не левой. Часто так гораздо проще нажать один из близкорасположенных к мыши пунктов.
  • Список хоткеев отдельным столбцом (возможно, с выравниванием по правому краю). Ни в коем случае не текстом в скобках.
  • Корректная обработка кликов по границе, например, правый клик, клик в той же точке (т. е. по левому верхнему углу меню). Лично я за обработку такого как клика по пункту меню (ну и подсветку реализовать, естественно, чтобы не было разницы в восприятии и обработке).

Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Re: Опрос про "контекстное меню"

Сообщение Proxy » 13.10.2014 (Пн) 11:55

Ещё несколько вопросов:

Какая максимальная глубина иерархического меню приемлема (положим приложение — какой-нибудь CAD или IDE)?

Приемлемый способ взаимодействия лиц с ограниченными способностями (нарушение зрения (не цветовосприятия), нарушение подвижности) с графическим контекстным меню:
Взаимодействие на уровне ОС (принудительное изменение размеров, TTS/Брайль/Иной терминал при открытии меню, распознавание голосовых команд после задержки, принудительные жесты)
Взаимодействие, реализуемое разработчиком прикладного ПО
Отсутствие взаимодействия (специальные версии ПО, либо отсутствие таковых)

Горячие клавиши:
Только для всего приложения
Уровня приложения + локальные для текущего меню (1 клавиша)
Никаких клавиш для управления (клавиатура только для набора текста, остальное — тачскрин/мышь/иной манипулятор)

Выделение родительского элемента меню:
Не должен выделяться
Должен выделяться
Должен быть навигатор, отражающий текущее положение в меню (дублировать путь), родительское меню нельзя перекрывать
Должен быть навигатор, отражающий текущее положение в меню, родительское меню можно перекрывать

Обновление меню:
Только при повторном открытии
В любое время (только доступность пунктов)
В любое время (любое изменение в меню)
Follow the white rabbit.


Вернуться в Народный треп

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17

    TopList