logo
logo

Форум Эргономика диалога создания операци

создать новую тему раскрыть все
Эргономика диалога создания операци Дим(м) 15/12/2005 22:50 #написать ответ
Вот хочу поделиться некоторыми соображениями. Отнюдь не настаиваю на их реализации, но, мне кажется, автору (да и остальным, наверное) было бы интересно.
 
1. Тратить 2 клика на выбор типа операции, ИМХО, не есть правильно. Стоит, наверное, заменить выпадающий список на 3 radio-button или toggle button (как кнопка Помощь внизу; radio-button - лучше, потому что по Tab фокус будет переходить сразу в следующее поле, а не на следующий тип операции).
Или же в будущем планируется добавлять в этот список какие-то новые типы? Даже если так. Если в итоге их будет не больше 5-ти, думаю, "однокликовый" вариант будет удобнее.
При этом, как мне кажется, разместить типы стоит в следующем порядке: расход - приход - перевод.
А также стоит вынести начальный (default) тип операций в настройки - это должно здорово помочь адептам двойной записи.
А поскольку выставленный в настройках начальный тип операции будет соответствовать наиболее частым случаям, то и фокус при открытии диалога можно сразу помещать в поле даты (кстати, а при редактировании операции это следует делать в любом случае - врядли кто-то будет менять тип, скорее, дату, сумму, статью).
 
2. Было бы удобно, если бы после типа операции фокус попадал не на "Операция выполнена"... Все же эти галочки используются гораздо реже, чем то же Примечание или Статья, например.
Также, считаю, что галочки эти не следует выключать (disable), а просто снимать (устанавливать) выделние с тех, которые не совместимы с только что отмеченной (про это я уже как-то писал). То же самое касается кнопки Повторение. Можно ведь автоматически устанавливать соотв. галочку, когда пользователь подтверждает ввод повторения на диалоге ввода повторения. (ох, как-то слишком много повторений
Кстати, эта самая кнопка Повторение расходует непозволительно много места на диалоге.
 

P.S. И почему на название темы ограничение в 35 символов? Хотя бы 70 было бы...
Пришлось порезать - продолжение Дим(м) 15/12/2005 22:53 #написать ответ
3. Так же я бы попытался разместить поле Примечание где-нть в самом низу диалога. Чисто логически оно должно дополнять, то, что вводится в других полях, т.е. должно вводиться после них, а не перед.
 
4. На диалоге не хватает стандартных клавиатурных сокращений Alt+буква. Для всяких галочек, radio-button, toggle button они должны "переключать" эти элементы, а для остальных полей - просто перемещать фокус. Конечно же буквы сокращений должны рисоваться подчеркнутыми (всегда или только когда нажат Alt). И, конечно же, они должны работать независимо от текущей раскладки клавиатуры (Alt+Д = Alt+L). А еще было бы здорово, если бы эти сокращения можно было настраивать прямо в файле со строками для перевода. Например, по той же схеме, что используется в Windows - & перед буквой-шорткатом.
 
5. В полях, допускающих создание новых элементов, (например, Счет) было бы правильно добавить обработку `+` - на экране ведь видны именно плюсы, и в голову они приходят раньше, чем Insert. Здесь полная аналогия с кнопкой `=` в поле суммы.
Продолжение 2 Дим(м) 15/12/2005 22:55 #написать ответ
6. В поле даты можно было бы сделать поддержку Ctrl+вправо/влево для перехода к следующему/предыдущему дню (стрелки вниз/вверх с фокусом на дате не то, потому что не меняют месяц: 01.12 -> 30.11)
Также не помешает клавиатурное сокращение для "жирной точки" Сегодня - Ctrl+T как и в списке операций?
В выпадающем календаре можно менять дату клавиатурными стрелками, а подтвердить выбор пробелом - нельзя только Enter-ом.
В выпадающем календаре Ctrl+влево/вправо и Alt+влево/вправо могли бы листать годы и месяцы. При листании года/месяца кнопками сохраняется выделение дня (15-е число нового месяца), а при листании PgUp/PgDn - нет.
Насколько я понял, "курсор-палец" используется только в выпадающем календаре/часах? А стоит ли тогда вообще его таким делать? Будет везде просто стрелка и все тут...
(Обратите внимание, что на диалоге повторений в Повторять до все еще используется старое поле ввода даты с неработающим "троеточием").
 
7. В выпадающих часах было бы здорово иметь возможность перемещать стрелки простым кликом по нужному месту циферблата (левой кнопкой - часы, правой кнопкой - минуты). Проблема с 2 разными часами на одном делении (9 и 21) тоже решается просто - большинство операций ведь происходят в нормальное дневное время. А в редких исключительных случаях можно и колесо покрутить.
Зачем в выпадающих часах "курсор-палец" над часами/минутами/секундами (а вот над кнопкой ОК - нет)?
Еще одно предложение Виктор 16/12/2005 11:56 #написать ответ
Может было бы несложно сделать такую вещь:
Для повторяющихся операций, при выделении ее галочкой из общего списка, автоматически вызывался бы диалог редактирования операции. (в идеале - позволить пользователю выбирать тип повторяющихся операций - требующая коррекции / не требующая)
 
Просто мне большинство повторяющихся операций приходится редактировать после того, как я помечаю операцию как выполненную (т.е. подправить сумму/дату/.. для конкретной операции, не изменяя при этом все будущие операции)
 
Спасибо
Честно говоря, не очень. (+) Dervish 16/12/2005 19:30 #написать ответ
И так довольно много времени требуется для ввода операции. Кроме того, такая галочка должна быть только на повторяющейся операции или на всех? А что делать, если операция вводится сразу как выполненная?
 
Кроме того, кликнув на встроенный в операцию чекбокс, можно сразу же сместить немного курсов вправо и сделать там двойной клик. Тут же получите операцию на редактирование. Или вместо двойного клика можно просто нажать на клавиатуре на Enter. Тот же эффект.
В таком случае, другая проблема (+) Виктор 22/12/2005 17:07 #написать ответ
А если у меня операция повторяется каждую неделю/день, а выбранный промежуток в списке операций - месяц. Тогда при щелчке (или нажатии space) на операции - появляется новая, и фокус со старой операции пропадает - Enter нажать уже не получается, а хотелось бы    (мышкой - можно сдвинуть чуть вправо-вниз, но привык пользоваться клавиатурой - хотелось бы чтобы фокус с помечаемой операции не пропадал бы)
А вот это моя... Dervish 26/12/2005 11:21 #написать ответ
...недоработка, я обязуюсь её исправить. Пока на странице операций действительно наблюдается некоторая чехарда с выделением активной операции. В том числе при отметке операции. Конечно, фокус должен оставаться на отмеченной операции и не должен пропадать или перескакивать на новую операцию.
 
Обязуюсь это исправить.
Согласен, Edmonton 16/12/2005 17:24 #написать ответ
IMHO, Дим(м) прав. Насчет дат - логично, хотя я обычно пользуюсь мышкой, но кому-то может быть полезно.
 
А вот первоочередные вещи - это (1) переделка типа операции из DropDown`а в RadioButton`ы или, например, в простой ListBox. Причем Расход по умолчанию - это было бы просто здорово!  
 
(2) Примечание внизу диалога - на все 100%! Обычно я иду при заполнении диалога сверху вниз, а примечание запечатываю в конце - так приходится "возвращаться"... Чувствовал себя как-то некомфортно, не знал, почему, а теперь понял!
Отвечу по пунктам. (+) Dervish 16/12/2005 18:48 #написать ответ
Маленькое предисловие:
 
Диалог операций пока стоит в очереди на переработку. Тем более актуальным выглядит ваше сообщение.
 
На будущее, лучше разбивать длинные сообщения на несколько дочерних. Так удобнее обсуждать даже несмотря на то, что разговор временами "уходит в сторону".
 
Сразу на постскриптум отвечу: 35 для того, чтобы заголовок каждого сообщения (со служебной информацией) умещался на одной строке. Понимаю что вопрос дизайна всегда (ну, почти всегда) спорный. Давайте оставим как есть, чтобы не тратить на это дело время.
1. Два клика. Dervish 16/12/2005 18:55 #написать ответ
Radio-button лучше всего. Собственно это и планировалось сделать.
 
<font color=black>> Или же в будущем планируется добавлять в этот список какие-то новые типы?
 
Нет, не планируется.
 
<font color=black>> При этом, как мне кажется, разместить типы стоит в следующем порядке: расход - приход - перевод.
 
Так и планировалось.
 
<font color=black>> А также стоит вынести начальный (default) тип операций в настройки - это должно здорово помочь адептам двойной записи.
 
Пока не знаю.
 
<font color=black>> А поскольку выставленный в настройках начальный тип операции будет соответствовать наиболее частым случаям, то и фокус при открытии диалога можно сразу помещать в поле даты (кстати, а при редактировании операции это следует делать в любом случае - врядли кто-то будет менять тип, скорее, дату, сумму, статью).
 
Учту, пока на эту тему не думал. Спасибо.
Замечательно: В.Червонных 16/12/2005 20:20 #написать ответ
&gt; А также стоит вынести начальный (default) тип операций в настройки -
&gt; это должно здорово помочь адептам двойной записи.
 
Я тоже давно подумывал, что это  было бы удобно.
 
&gt;Пока не знаю.
В смысле трудновато переделывется?
Да нет,... Dervish 16/12/2005 20:48 #написать ответ
...переделывается просто. Вот только:
 
1. Следом тут же возникнет вопрос: - "А какие счета подставлять по умолчанию в операцию?".
 
И 2. Мне казалось, что я сделал так, что если на странице операций установлен режим "Только переводы между выбранными счетами", то автоматом должен выбираться вид операции "перевод". Сейчас проверил, оказывается это не так: счета подставляются, а вот вид операции устанавливает на обычный "Расход".
 
Так вот, для адептов операций перевода...
 
Может быть будет достаточно, если вид операции "Перевод" будет устанавливаться автоматически, в случае когда на странице операций показаны только переводы?
По поводу счетов- В.Червонных 16/12/2005 21:34 #написать ответ
достаточно осуществить уже задуманное улучшение.
&gt;Может быть будет достаточно, если вид операции "Перевод" будет устанавливаться автоматически, в случае когда на странице операций показаны только переводы?
 
Тоже неплохо. Хотя я, например, изредка и смешиваю двойную запись с простой.
2. Фокус. Dervish 16/12/2005 19:02 #написать ответ
<font color=black>&gt; Было бы удобно, если бы после типа операции фокус попадал не на "Операция выполнена"... Все же эти галочки используются гораздо реже, чем то же Примечание или Статья, например.
 
Фокус совсем не должен попадать на "Операция выполнена"? Совсем-совсем? Нет? А тогда в какой момент?
 
<font color=black>&gt; Также, считаю, что галочки эти не следует выключать (disable), а просто снимать (устанавливать) выделние с тех, которые не совместимы с только что отмеченной (про это я уже как-то писал).
 
А вот это мне не нравится, извините. Мы все привыкли, что при нажатии на radio-button другие кнопки из этой группы очищаются. Чек-боксы подразумевают, что изменяется только тот контрол, на который кликнули. А теперь представьте, что при нажатии на некоторые чек-боксы другие начинают "чудить", то есть вдруг будут сбрасывать своё состояние. Это непорядок, так нельзя.
 
Кстати, в одном журнале посвящённом юзабилити я видел описание аналогичной ситуации. Там один программист реализовал поведение чекбоксов аналогично радиобаттонам. Ну и комментарий этого журнала был примерно такой: - Если вы хотите совсем запутать ваших пользователей, то эти контролы для вас.
 
<font color=black>&gt; То же самое касается кнопки Повторение. Можно ведь автоматически устанавливать соотв. галочку, когда пользователь подтверждает ввод повторения на диалоге ввода повторения.
 
Не совсем понял, что вы имели в виду?
 
<font color=black>&gt; Кстати, эта самая кнопка Повторение расходует непозволительно много места на диалоге.
 
Предложения?
Фокус и повторения.. Дим(м) 16/12/2005 22:30 #написать ответ
&gt; Фокус совсем не должен попадать на "Операция выполнена"? Совсем-совсем?
Конечно же должен. Когда? Думаю, перед переходом на тип операции. А поскольку тип операции в самом начале цикла, то, соответственно, "Операция выполнена" должна быть в конце.
 
&gt; Не совсем понял, что вы имели в виду?
Да все то же. Кнопку не выключать. А если пользователь ее нажмет, а потом еще и в диалоге ввода повторений нажмет на ОК (т.е. подтвердит, что ему действительно нужно повторение), то автоматически отмечать галочку "Повторять операцию".
 
&gt; Предложения?
Да нет пока у меня ничего конкретного. Только мысли, что ее надо бы куда-нть задвинуть.. Вниз вместе с примечанием? Но тогда она будет далеко от своего чекбокса. А может, и чекбокс этот убрать? Точнее, перенести его на сам диалог повторений? Т.е. при вводе операции есть просто кнопка Повторение. А уже там один из вариантов (выбранный по умолчанию) - "Не повторять".
 
А еще можно было бы на диалоге операции показывать где-нибудь краткое описание заданного правила повторения, типа "Повторять еженедельно по вторникам". Так, например, сделано в WinOrganizer. Но это уже совсем другая история..
Про чекбоксы Дим(м) 16/12/2005 22:33 #написать ответ
&gt; А вот это мне не нравится, извините... Чек-боксы подразумевают, что изменяется только тот контрол, на который кликнули.
Но ведь у вас меняются и другие контролы - выключаются. Да и догадаться, что для того, чтобы установить повторение нужно сначала отменить "выполненность" (т.е. думать вперед программы), на мой взгляд, гораздо сложнее, чем уже после того, как она сама снимет "лишние" галочки додумывать, почему она это сделала.
Но, в общем, конечно, дело ваше, я могу только предлагать.
 
Кстати, касательно использования чекбоксов в качестве радиобаттонов - у этого варианта есть одно существенное отличие, которое, на мой взгляд, вполне его оправдывает в некоторых случаях. При использовании чекбоксов можно не устанавливать ни одной галочки, что иногда бывает нужно. Тогда как радиобаттоны требуют, чтобы один элемент был выбран. Кстати, такие "подмены" встречаются не так уж и редко..
 
Фокус, повторения и чекбоксы... Dervish 26/12/2005 11:30 #написать ответ
Этот разговор, конечно, дал тему для разышлений. Вообще мне ещё предстоит переработка диалога добавления/редактирования операций, так что разговор оказался очень к месту.
 
Я обязательно попробую реализовать то, о чём вы говорите. Мне кажется, что иногда некоторые интерфейсные вопросы следует просто пробовать и смотреть что получается в реализации. Иногда бывает сложно сказать, хорошо ли выйдет или нет. Так, например, я затрудняюсь что-то определённое сказать с переносом порядка обхода чек-бокса "Операция выполнена". Кроме того, там могут возникнуть проблемы технического порядка.
 
В общем, нужно пробовать. И я намерен поэкспериментировать.
 
Спасибо.
3. Примечание. Dervish 16/12/2005 19:04 #написать ответ
<font color=black>&gt; Так же я бы попытался разместить поле Примечание где-нть в самом низу диалога. Чисто логически оно должно дополнять, то, что вводится в других полях, т.е. должно вводиться после них, а не перед.
 
Не буду спорить, возможно вы правы. Нужно попробовать.
4. Сокращения. Dervish 16/12/2005 19:08 #написать ответ
<font color=black>> На диалоге не хватает стандартных клавиатурных сокращений Alt+буква. Для всяких галочек, radio-button, toggle button они должны "переключать" эти элементы, а для остальных полей - просто перемещать фокус. Конечно же буквы сокращений должны рисоваться подчеркнутыми (всегда или только когда нажат Alt). И, конечно же, они должны работать независимо от текущей раскладки клавиатуры (Alt+Д = Alt+L). А еще было бы здорово, если бы эти сокращения можно было настраивать прямо в файле со строками для перевода. Например, по той же схеме, что используется в Windows - & перед буквой-шорткатом.
 
Выделенное мною предложение совершенно справедливо. Сокращения пока не расставлены потому что (а) диалог ещё будет в работе, будет правиться и (б) потом, после завершения работы над кодом нужно будет в целом проработать клавиатурные сокращения по всей программе и всем диалогам. И нужно будет их просто добавить в языковой файл.
5. Создание новых элементов Dervish 16/12/2005 19:12 #написать ответ
<font color=black>> В полях, допускающих создание новых элементов, (например, Счет) было бы правильно добавить обработку `+` - на экране ведь видныименно плюсы, и в голову они приходят раньше, чем Insert. Здесь полная аналогия с кнопкой `=` в поле суммы.
 
Мне в голову не приходило, наверное потому, что всегда за ноутом сижу на котором Numpad отсутствует как класс (вы ведь про + именно Numpad-овский говорили?).
 
В принципе замечаний нет никаких, наверное это справедливое предложение. Спасибо.
6. Контролы Dervish 16/12/2005 19:20 #написать ответ
<font color=black>> В поле даты можно было бы сделать поддержку Ctrl+вправо/влево для перехода к следующему/предыдущему дню (стрелки вниз/вверх с фокусом на дате не то, потому что не меняют месяц: 01.12 -> 30.11)
 
Принимается.
 
<font color=black>> Также не помешает клавиатурное сокращение для "жирной точки" Сегодня - Ctrl+T как и в списке операций?
 
Кнопки "Home" недостаточно?
 
<font color=black>> В выпадающем календаре можно менять дату клавиатурными стрелками, а подтвердить выбор пробелом - нельзя только Enter-ом.
 
Если по ходу никаких засад не обнаружится, сделаю.
 
<font color=black>> В выпадающем календаре Ctrl+влево/вправо и Alt+влево/вправо могли бы листать годы и месяцы. При листании года/месяца кнопками сохраняется выделение дня (15-е число нового месяца), а при листании PgUp/PgDn - нет.
 
Сделать можно, не запутаетесь?
 
<font color=black>> Насколько я понял, "курсор-палец" используется только в выпадающем календаре/часах? А стоит ли тогда вообще его таким делать? Будет везде просто стрелка и все тут...
 
Ещё используется для переходов со страницы операций на страницу счетов. А где ещё он должен использоваться?
 
<font color=black>> (Обратите внимание, что на диалоге повторений в Повторять до все еще используется старое поле ввода даты с неработающим "троеточием").
 
Диалог повторений, равно как и диалог операций требует переработки. Троеточие будет устранено, там появится точка "сегодня" со стрелочками.
А про кнопку Home я и не знал :) Дим(м) 16/12/2005 21:57 #написать ответ
Привык, что в списке операций за это отвечает Ctrl+T, вот и пытался ее нажимать.
 
&gt; Сделать можно, не запутаетесь?
Если речь о том, которая комбинация (с Ctrl или с Alt) листает месяцы, а которая годы, то запутаться очень даже реально. В таком случае, лучше действительно оставить только один вариант - Ctrl+стрелки для листания месяцев, но сделать так, чтобы после января/декабря автоматически менялся и год: 12.2005 -&gt; 01.2006 - точно так же, как и 01.12 -&gt; 30.11 для дат.
 
&gt; Ещё используется для переходов со страницы операций на страницу счетов. А где ещё он должен использоваться?
Ну "ссылки" в таблицах - это понятно. Но ведь над всеми другими кнопками курсор отображается обычной стрелкой - почему кнопки в выпадающем календаре должны быть особенными?
А чтобы не запутаться IF 22/12/2005 14:35 #написать ответ
можно попробовать сделать обработку ctrl + влево/вправо = месяцы,
а ctrl + вверх/ввниз это годы.
Или же попытаться использовать однотипные сочетания во всей программе:
Ctrl + влево/вправо == смена дней
Alt + влево/вправо == месяцы
Alt + вверх/вниз == годы
Или нечто подобное, но неизменное по всем диалоговым окнам.
Можно, но... Dervish 26/12/2005 11:31 #написать ответ
...думаю, это не срочно. Лучше будет вернуться к этому вопросу чуть позже.
7. Часы Dervish 16/12/2005 19:25 #написать ответ
<font color=black>> В выпадающих часах было бы здорово иметь возможность перемещать стрелки простым кликом по нужному месту циферблата (левой кнопкой - часы, правой кнопкой - минуты). Проблема с 2 разными часами на одном делении (9 и 21) тоже решается просто - большинство операций ведь происходят в нормальное дневное время. А в редких исключительных случаях можно и колесо покрутить.
 
А вот интересно, для вас (в вашем же примере с 9 и 21) какое время предпочтительнее, 9 часов или 21? Для меня - 21. А для вас? А вы уверены, что никто не скажет, что для него будет 9?
 
Боюсь, тут мы встаём на очень скользкую тропу догадок и умолчаний.
 
<font color=black>> Зачем в выпадающих часах "курсор-палец" над часами/минутами/секундами (а вот над кнопкой ОК - нет)?
 
А нет? Ох, не уследил. Это непорядок, спасибо.
По-моему, это не принципиально Дим(м) 16/12/2005 22:41 #написать ответ
Какой диапазон вы выберете в качестве "базового", такой и будет. В любом случае, хуже от такой возможности, думаю, не станет.
А еще можно выбирать диапазон исходя из текущего времени (-6 часов...+6часов), а для часов вне его предусмотреть возможность "альтернативного" клика, например, с зажатым Alt-ом.
Те, кому не будет нравится это поведение, просто не будут им пользоваться а будут "таскать" стрелки или крутить колесо.
 
Кстати, для минут ведь такой проблемы нету. И двигать таким образом минутную стрелку, думаю, стоит в любом случае - уж очень долго иначе крутить колесо.
великая проблема AM/PM Edmonton 20/12/2005 11:18 #написать ответ
IMHO, Дим(м) неплохо предложил - берется текущее время, и исходя из него в часах устанавливается AM или PM, соответственно.  
 
И в идеале, конечно, это поведение можно отключить в настройках :-)
Чувствуется мне, IF 22/12/2005 14:51 #написать ответ
что потихоньку помаленьку, а количество настроек растёт непропорционально функционалитету(печать бы...)
Здаётся мне, Дервиш уже подумывает как ему придёться сводить к минимализму всё это.
И как потом пользователю объяснить, что он может настроить почти всё, надо только знать где.
 
Хотя я всеми руками и ногами ЗА возможность пользователю самому решать что он хочет от программы. От размера окон и шрифтов, до глобальных изменений логики программ.
Но это, конечно, мечты о прекрасном будущем.
Вот именно! Dervish 26/12/2005 11:33 #написать ответ
Меня начинает пугать количество настроек.
8. А еще на диалоге повторений... Дим(м) 27/12/2005 12:56 #написать ответ
.. было бы правильно, на мой взгляд, расположить дни недели по вертикали, а не по горизонтали. И в ежедневниках, и в школьных дневниках - везде мы привыкли видеть вторник под понедельником, а не справа от него.
 
Кроме того, обратите внимание, что названия некоторых дней недели обрезаются из-за недостаточного места: Понедельник, Воскресенье.
 
Также еще одна небольшая проблема в том, что рамка фокуса на радио-батоне затирает край самой правой буквы. Было бы лучше сделать ее чуть пошире, чтобы от края текста до ее правой границы был небольшой отступ.
Расстояния и размеры... Dervish 30/12/2005 22:40 #написать ответ
...окон будут поправлены. А положение дней... Вообще-то я заимствовал их из Аутлука. Может быть и будут поправлены.
 
Этот диалог ещё в плане на переработку.
не хватает поиска KNik 11/01/2006 15:07 #написать ответ
по поводу 2-х кликов.  
 
В процессе работы с базой формируется солидное дерево классификаторов таких как "статьи" (а у некоторых и счета), при создании операции в поляк с выпадающим списком (например, статья) приходиться сначала открывать список потом листать его (и разворачивая дерево) в поисках нужной статьи, и кликов уже гораздо больше, а ведь это самые используемые поля.  
Было бы в таких случаях удобнее использовать поиск. Например, при щелчке по полю ввода выпадает список, но удобнее просто вводить начальные символы искомой статьи, а появляется список с вариантами, если вариантов нет, то при нажатии на "+" добавлять эту статью.
 
Также не хватает некого поиска в классификаторах. Бывали случаи когда, например, в статьях статья с одним названием появлялись на разных ветвях дерева, а все из-за того, что не углядел, что такая статья уже есть.
 
p.s. вроде уже такой вопрос задавался. ситуация не изменилась?
Пока не изменилась. (-) (-) Dervish 16/01/2006 01:21 #написать ответ