GUI контролирует появление и исчезновение на основе пользовательских данных

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

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

Под текстовым полем имени файла находятся строки пар меток и текстовых полей со значениями для каждого из этих свойств. Меня попросили не показывать метку и текстовое поле, если связанное свойство имеет значение null.

Пользователь может многократно выбирать разные файлы, и значения в текстовых полях должны обновляться соответствующим образом. Кроме того, метки и текстовые поля должны появляться и исчезать в зависимости от того, являются ли значения пустыми. Кроме того, значение экрана должно уменьшаться или увеличиваться, чтобы не было пустого пространства (из-за нулевых значений и, следовательно, отсутствующих элементов управления).

Мне кажется, что это было бы очень неприятно для пользователя (чтобы элементы управления появлялись, исчезали и так далее).

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

(Я бы предпочел просто оставить текстовые поля пустыми для нулевых значений.)

3 ответа

Решение

Я должен не согласиться с Конрадом и Брайаном здесь - в конечном итоге это будет раздражать большинство пользователей.

Хотя динамический отклик, безусловно, является действительной парадигмой графического интерфейса пользователя, динамическое скрытие / отображение и изменение размеров дисплеев на основе выбора из одного и того же списка (или записи в одном и том же текстовом поле), как правило, очень раздражает обычных конечных пользователей. Вот почему так называемые "умные" меню в Office (и Win2K/XP) были ненавидимы многими - казалось, что функции появляются и исчезают без всякой причины.

Правильная парадигма в этом случае - отключение ("выпадение") элементов управления. Если вы ищете конкретные цитаты, я думаю, что это обсуждалось в " About Face: Основы дизайна пользовательского интерфейса". Я знаю, что команда юзабилити Microsoft Office также добилась таких же результатов в своих лабораториях.

Упреждающее примечание:

Показывать / скрывать не всегда плохая парадигма. Но используйте это, когда это имеет смысл. Для панели инструментов Windows Explorer имеет смысл отображать различную контекстную информацию в зависимости от того, выбрали ли вы Word Doc, изображение или MP3. Это небольшая пограничная часть пользовательского интерфейса, без видимых (и особенно не редактируемых) элементов управления. Ожидается, что переход к новой вкладке скроет элементы управления с предыдущей вкладки и покажет их на новой вкладке, но опять же вкладки являются навигационной парадигмой.

Показ и сокрытие в одном и том же представлении, для которого (для большинства пользователей) будут данные одного и того же вида, является неприятным опытом.

Нет, это звучит как нормальный дизайн GUI. Независимо от типа файла, вы выполняете одну и ту же основную задачу. Вы просто немного измените детали того, какие свойства отображаются. Та же задача = должна быть на том же экране.

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

Честно говоря, это кажется очень странным руководством, по крайней мере, если сформулировать это широко. Фактически, чтобы получить результат, графический интерфейс должен динамически меняться, реагируя на ввод пользователя.

Мне кажется, что это будет очень неприятно для пользователя

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

Другие вопросы по тегам