Здравствуйте, goto, Вы писали:
G>В броузерах делается одна такая кнопка Reload/Cancel.
Это какое-то адское изобретение. Именно в браузерах. Я вот вижу, что страница чего-то грузится (скрипты в конце страницы какие-нибудь), а все что надо, уже загрузилось. И как раз в тот момент, когда я решил, "хватит, не надо грузить" и нажимаю на кнопку, она меняется. Сейчас посмотрел в хроме, чуть лучше сделано, но все равно не приятно (в firefox'е у меня давным давно две кнопки). А еще я могу хотеть reload без stop (ну да, те же медленно грузящиеся страницы). В плеерах такое сочетание более логично. Плюс там обычно видно начало/конец воспроизведения, да и pause/resume лучше, чем cancel/restart.
В броузерах делается одна такая кнопка Reload/Cancel. Play/Pause в плеерах, как упоминалось. В некоторых софтах встречалось (игры, например), когда одна кнопка и инициализирует и прерывает операцию или режим работы. Но надо смотреть, конечно. Прежде всего юзер должен сразу заметить такую метаморфозу, если даже там от контролов тесно. Во-вторых, такое использование одной кнопки традиционно характерно для относительно быстрых операций — не двигая мышь оперативно останавливаем/запускаем что-то, это удобно. А просто отсутствие свободного места — в общем случае не аргумент. Но тут главное, чтобы юзеру было понятно. Операция, как я понял, не такая уж частая, как в приведенных в начале примерах.
если делать одну кнопку, есть вероятность что юзер случайно нажмет на нее два раза, например у него тачпад и пальцы дрожат.
в этом плане две кнопки в разных местах безопаснее.
если случайная остановка не страшна, то конечно лучше делать 1 кнопку, будет компактнее, задизейбленые кнопки не будут отвлекать внимание юзера
ГДЕ эта кнопка? Например, одно дело на тулбаре, совсем другое — в диалоге. Не имея контекста, трудно угадать. А может, если процесс важный, типа как раньше была прервать запись дорогой болванки, вам стоит показывать онтопный диалог с прогрессом и Cancel'ом.
T>1) Менять Start на Cancel, т.е. кнопка будет одна, но выполнять она будет 2 функции, в зависимости от состояния;
Не зная деталей, это выглядит лучшим вариантом. Посмотрите на Play/Pause.
Подскажите, может кто сталкивался с такой проблемой GUI: есть кнопка, запускающая длительный процесс, назовем ее Start. Нужно добавить функциональность, прерывающий процесс, т.е. Cancel. Варианты:
1) Менять Start на Cancel, т.е. кнопка будет одна, но выполнять она будет 2 функции, в зависимости от состояния;
2) Добавить отдельную кнопку Cancel. Места правда под нее
3) Использовать какой-то другой контрол для решения этой проблемы?
Мельком пролистал Windows User Experience Interaction Guide, но решения как сделать "кошерно" не нашел. Может кто-то сталкивался с подобной проблемой? Поделитесь опытом.
На диалоге.
А>ГДЕ эта кнопка? Например, одно дело на тулбаре, совсем другое — в диалоге. Не имея контекста, трудно угадать. А может, если процесс важный, типа как раньше была прервать запись дорогой болванки, вам стоит показывать онтопный диалог с прогрессом и Cancel'ом.
T>>1) Менять Start на Cancel, т.е. кнопка будет одна, но выполнять она будет 2 функции, в зависимости от состояния;
Хорошая кстати ассоциация, спасибо. А>Не зная деталей, это выглядит лучшим вариантом. Посмотрите на Play/Pause.