2 функции на одну кнопку
От: Timonn24 Россия  
Дата: 20.06.13 11:15
Оценка:
Добрый день!

Подскажите, может кто сталкивался с такой проблемой GUI: есть кнопка, запускающая длительный процесс, назовем ее Start. Нужно добавить функциональность, прерывающий процесс, т.е. Cancel. Варианты:

1) Менять Start на Cancel, т.е. кнопка будет одна, но выполнять она будет 2 функции, в зависимости от состояния;
2) Добавить отдельную кнопку Cancel. Места правда под нее
3) Использовать какой-то другой контрол для решения этой проблемы?

Мельком пролистал Windows User Experience Interaction Guide, но решения как сделать "кошерно" не нашел. Может кто-то сталкивался с подобной проблемой? Поделитесь опытом.
Re: 2 функции на одну кнопку
От: Аноним  
Дата: 20.06.13 11:21
Оценка: +1
Здравствуйте, Timonn24, Вы писали:

ГДЕ эта кнопка? Например, одно дело на тулбаре, совсем другое — в диалоге. Не имея контекста, трудно угадать. А может, если процесс важный, типа как раньше была прервать запись дорогой болванки, вам стоит показывать онтопный диалог с прогрессом и Cancel'ом.

T>1) Менять Start на Cancel, т.е. кнопка будет одна, но выполнять она будет 2 функции, в зависимости от состояния;


Не зная деталей, это выглядит лучшим вариантом. Посмотрите на Play/Pause.
Re[2]: 2 функции на одну кнопку
От: Timonn24 Россия  
Дата: 20.06.13 11:23
Оценка:
На диалоге.

А>ГДЕ эта кнопка? Например, одно дело на тулбаре, совсем другое — в диалоге. Не имея контекста, трудно угадать. А может, если процесс важный, типа как раньше была прервать запись дорогой болванки, вам стоит показывать онтопный диалог с прогрессом и Cancel'ом.


T>>1) Менять Start на Cancel, т.е. кнопка будет одна, но выполнять она будет 2 функции, в зависимости от состояния;


Хорошая кстати ассоциация, спасибо.
А>Не зная деталей, это выглядит лучшим вариантом. Посмотрите на Play/Pause.
Re: 2 функции на одну кнопку
От: goto Россия  
Дата: 20.06.13 19:38
Оценка: 1 (1)
В броузерах делается одна такая кнопка Reload/Cancel. Play/Pause в плеерах, как упоминалось. В некоторых софтах встречалось (игры, например), когда одна кнопка и инициализирует и прерывает операцию или режим работы. Но надо смотреть, конечно. Прежде всего юзер должен сразу заметить такую метаморфозу, если даже там от контролов тесно. Во-вторых, такое использование одной кнопки традиционно характерно для относительно быстрых операций — не двигая мышь оперативно останавливаем/запускаем что-то, это удобно. А просто отсутствие свободного места — в общем случае не аргумент. Но тут главное, чтобы юзеру было понятно. Операция, как я понял, не такая уж частая, как в приведенных в начале примерах.
Re: 2 функции на одну кнопку
От: Abyx Россия  
Дата: 20.06.13 20:49
Оценка: 1 (1)
Здравствуйте, Timonn24, Вы писали:

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

если случайная остановка не страшна, то конечно лучше делать 1 кнопку, будет компактнее, задизейбленые кнопки не будут отвлекать внимание юзера
In Zen We Trust
Re[2]: 2 функции на одну кнопку
От: maxkar  
Дата: 21.06.13 16:31
Оценка: +3
Здравствуйте, goto, Вы писали:

G>В броузерах делается одна такая кнопка Reload/Cancel.

Это какое-то адское изобретение. Именно в браузерах. Я вот вижу, что страница чего-то грузится (скрипты в конце страницы какие-нибудь), а все что надо, уже загрузилось. И как раз в тот момент, когда я решил, "хватит, не надо грузить" и нажимаю на кнопку, она меняется. Сейчас посмотрел в хроме, чуть лучше сделано, но все равно не приятно (в firefox'е у меня давным давно две кнопки). А еще я могу хотеть reload без stop (ну да, те же медленно грузящиеся страницы). В плеерах такое сочетание более логично. Плюс там обычно видно начало/конец воспроизведения, да и pause/resume лучше, чем cancel/restart.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.