создать новую тему раскрыть все
свернуть/развернуть ветвь Пожелание на счет календарей [Николай 06/09/2005 18:44] # написать ответ
 
Хотелось бы, чтобы было так (удобнее):
Если я выбираю в календаре <B>Начная</B> дату более позднюю, чем стоит в <B>Заканчивая</B>, то <B>Заканчивая</B> становится равным <B>Начиная</B>. И наоборот если я выбираю <B>Заканчивая</B>,  более раннюю, чем <B>Начиная</B>, ...
 
Спасибо.
 
свернуть/развернуть ветвь А в чем может быть путаница? [Николай 06/09/2005 21:40] # написать ответ
 
По-моему это логично. Ведь <B>Начиная</B> все равно не может быть позже <B>Заканчивая</B> и наоборот.
свернуть/развернуть ветвь нелогично то [Explorer 06/09/2005 22:38] # написать ответ
 
что дата начиная становится вдруг датой заканчивая
а дата заканчивая становится вдруг датой начиная
 
у вас что по мат.логике было?
 
А то, что дата начиная становится позже, чем дата заканчивая, логично? Вы, я вижу, грамотный, объясните пожалуйста двоечнику, чем это логичнее?
 
если пользователь ввел некорректные данные программа должна  
 
&gt;&gt;или попытаться их обработать (например попытаться все-таки вывести список - причем это могло бы быть решением Well)) ниже)
 
&gt;&gt;или ничего не делать и предложить пользователю исправить некорректные значения самому -ручками
 
&gt;&gt;или ничего не делать и предложить пользователю автоматическое изменение (создать настройку пользователя или предложить пользователю самому создать настройку)
 
case1 opt1 нечего не менять в полях ввода и вывести список за указаный период - все равно период указан если заполнены оба поля дат
 
case1 opt2 ничего не менять в полях ввода и вывести все записи без тех, что приходятся на указаный период - исключающий фильтр
 

то что предлагаете вы - безсистемный подход, он недопустим в программировании интерфейсов
свернуть/развернуть ветвь То, что я предлагаю — удобно... [Николай 11/09/2005 01:43] # написать ответ
 
&gt;&gt;&gt; case1 opt1 нечего не менять в полях ввода и вывести список за указаный период - все равно период указан если заполнены оба поля дат.
 
Ну и что может вывестись, если дата <B>начиная</B> больше, чем дата <B>заканчивая</B>? Поймите же, что мое предложение ну никак не может навредить — если дата <B>начиная</B> больше, чем дата <B>заканчивая</B>, то вам по-любому придется вторую дату поменять. И какая вам разница с какой даты ее менять? Я просто предлагаю избавиться от пары лишних телодвижений. А ваш вывод ("то что предлагаете вы - безсистемный подход, он недопустим..."), мне кажется, не аргументирован.
 
p.s. Можно сделать и опционально, но это будет (мне кажется) бессмысленный пункт в настройках.
 
...извините, самодеятельностью.
 
У любой программы есть ожидаемое поведение. Так, от нажатия на кнопку "Delete" мы всегда ожидаем, что что-то будет удалено (как правило, именно то, что выбрано).
 
Вот это самое "ожидаемое поведение" есть, наверное, основой юзабилити. Если бы не было ожидаемого поведения, мы с вами просто закопались бы изучая документацию на все продукты.
 
Так вот, я это говорю к тому, что описанное вами поведение выбора дат не является ожидаемым. По крайней мере мною. Мало того, я был бы сильно удивлён, если бы у меня под курсором мышки даты стали бы скакать как угорелые.
 
Давайте на примере. Я - начинающий пользователь. Допустим у меня выбран диапазон дат с 1 по 31 января. Я хочу изменить диапазон на 1-31 марта. Для этого я нацеливаюсь на дату "Начиная". И изменяю дату на 1 марта и вдруг, о чудо!, я вижу что в этом контроле появляется дата 31 января (всё моё внимание приковано к контролу "Начиная"). Первая моя мысль - "Программа работает неправильно". Вторая - "похоже, я дурак, я что-то неверно сделал" (а я не люблю себя чувствовать дураком, уверяю вас).
 
Но вот я, наконец, разглядел, что в результате моего действия я получил диапазон с 31 января по 1 марта и... И я оказываюсь в ступоре: а что я должен сделать для того, чтобы получить требуемый диапазон, то есть 1 - 31 марта.
 
Кстати, а что я должен сделать в этой ситуации?
 
Надеюсь, я вас убедил.
 
Мне кажется, идея осталась несколько недопонятой. Конечно же программа не должна менять то поле, с которым работает пользователь! Т.е. если я исправляю дату "Начиная", то программа может корректировать только дату "Заканчивая" и наоборот. Попробую пояснить на примере. Допустим изначально выбран диапазон 01.01 - 31.01 Если пользователь ничинает увеличивать дату "Начиная", то значения в полях меняются по следующей схеме:
02.01 - 31.01
03.01 - 31.01
...
30.01 - 31.01
31.01 - 31.01
01.02 - 01.02 - вот он ключевой момент!
02.02 - 02.02
и т.д.
Соответственно, если пользователь начнет уменьшать дату "Заканчивая", то все повторяется с точностью до наоборот:
01.03 - 31.03
01.03 - 30.03
...
01.03 - 02.03
01.03 - 01.03
28.02 - 28.02 - !
27.02 - 27.02
и т.д.
 
В таком виде, на мой взгляд, это никакая не самодеятельнось, а просто страховка пользователя от возможных ошибок. Раз уж программа не использует никакой специальной трактовки "вывернутого" диапазона (вроде, "все даты, кроме выбранных"), то вполне нормально, что она будет помогать пользователю избежать такого ввода.
 
Кстати, ведь точно так же ведут себя галочки на диалоге добавления операции! Если "Операции выполнена", то для нее нельзя задать повторение. Если повторяется - то нельзя отметить выполненной. Они, как и предлагаемое улучшение выбора дат, не дают пользователю сделать бессмысленный ввод.
И если уж речь зашла о юзабилити, то стоит тогда уже сделать эти галочки всегда включенными, но позволяющими выбрать только одну из них - все тому же гипотетическому начинающему пользователю так будет гораздо проще понять, что выполненная операция не может повторяться и наоборот (помню, как я сам не сразу понял, как же сделать так, чтобы можно было задать повторение - оказалось, что надо сначала снять выставляемый по-умолчанию признак выполненности) Я уже давно про это писал...
свернуть/развернуть ветвь Я именно это имел в виду. [Николай 12/09/2005 15:19] # написать ответ
 
Прошу прощения, если был неконкретен.
свернуть/развернуть ветвь плохая идея [Explorer 06/09/2005 22:36] # написать ответ
 
собственно сабж