[Юзабилити-блог] Навигация по диску
От: Зверёк Харьковский  
Дата: 19.07.05 06:04
Оценка:
Привет. Это программное заявление Комитета по Борьбе с Деревьями
Автор: Зверёк Харьковский
Дата: 06.04.05
.


Задача стояла следующим образом: в рамках большого диалога нужен небольшой контрол выбора файлов и папок. Юз-кейс такой: пользователь навигирует по контролу, выбирает файл/папку которая ему нужна, нажимает кнопку "добавить" рядом с контролом, навигирует дальше. В рамках одного сеанса работы с диалогом может быть выбрано любое количество файлов/папок (таким образом, стандартные диалоги Open... и Browse For Folder выбывают из игры).

Итак, для навигации по диску мы попробуем несколько контролов. Два из них — вполне стандратны; один — мною предлагается (хотя я и не первооткрыватель, мысль скрадена у Кодта
Автор: Кодт
Дата: 16.04.05
).

Все контролы продемонстрированы в состоянии просмотра одной и той же папки. Контрольные вопросы для тестирования контролов (кто придумает еще, welcome):
1. как узнать, где мы находимся?
2. как просмотреть список всех элементов в текущей папке?
3. как переключиться на папку Languages? (верхнюю по отношению к этой)
4. как переключиться на папку C#? (предыдущую по отношению к этой)
5. как переключиться на папку D? (следующую по отношению к этой)

Экспонат раз: Комбобокс + листбокс (а-ля диалог Save As)

1. как узнать, где мы находимся? раскрыть комбобокс
2. как просмотреть список всех элементов в текущей папке? крутить вертикальный ползунок
3. как переключиться на папку Languages? (верхнюю по отношению к этой) раскрыть комбобокс и переключиться (в более продвинутых вариантах — нажать на кнопку "уровень вверх" возле комбобокса)
4. как переключиться на папку C#? (предыдущую по отношению к этой) Перейти в Languages, найти глазами C++, перейти в предыдущую
5. как переключиться на папку D? (следующую по отношению к этой) Перейти в Languages, найти глазами C++, перейти в следующую

Экспонат два: Дерево с опцией Show Files

1. как узнать, где мы находимся? ну, покрутить ползунок вверх, пока не увидим папку верхнего уровня, повторять до посинения.
2. как просмотреть список всех элементов в текущей папке? крутить ползунок вниз до появления папки с уровнем не ниже текущей
3. как переключиться на папку Languages? (верхнюю по отношению к этой) крутить ползунок вверх, пока не увидим папку верхнего уровня
4. как переключиться на папку C#? (предыдущую по отношению к этой) крутить ползунок вверх до появления папки с уровнем не ниже текущей
5. как переключиться на папку D? (следующую по отношению к этой) крутить ползунок вниз до появления папки с уровнем не ниже текущей

Экспонат три: Древосписок имени Кодта

Некоторые пояснения: в дереве — только текущий путь (по сути, это "всегда разложенный" комбобокс из варианта 1); высота дерева зависит от длины пути. При клике мышей по любому элементу дерева текущим становится этот элемент, в списке появляется его содержимое; (например, если кликнуть по папке !work, в списке будут элементы этой папки, фокус в списке — на папке base; содержимое дерева — только путь до !work)
1. как узнать, где мы находимся? видно и так
2. как просмотреть список всех элементов в текущей папке? крутить ползунок
3. как переключиться на папку Languages? (верхнюю по отношению к этой) клацнуть по ней
4. как переключиться на папку C#? (предыдущую по отношению к этой) клацнуть по Languages, в списке подняться на 1 элемент
5. как переключиться на папку D? (следующую по отношению к этой) клацнуть по Languages, в списке спуститься на 1 элемент

Any comments?
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
FAQ — це мiй ай-кью!
Re: [Юзабилити-блог] Навигация по диску
От: DuШes  
Дата: 19.07.05 06:30
Оценка:
Здравствуйте, Зверёк Харьковский, Вы писали:

[....]
ЗХ>Экспонат три: Древосписок имени Кодта
ЗХ>
ЗХ>Некоторые пояснения: в дереве — только текущий путь (по сути, это "всегда разложенный" комбобокс из варианта 1); высота дерева зависит от длины пути. При клике мышей по любому элементу дерева текущим становится этот элемент, в списке появляется его содержимое; (например, если кликнуть по папке !work, в списке будут элементы этой папки, фокус в списке — на папке base; содержимое дерева — только путь до !work)
ЗХ>1. как узнать, где мы находимся? видно и так
ЗХ>2. как просмотреть список всех элементов в текущей папке? крутить ползунок
ЗХ>3. как переключиться на папку Languages? (верхнюю по отношению к этой) клацнуть по ней
ЗХ>4. как переключиться на папку C#? (предыдущую по отношению к этой) клацнуть по Languages, в списке подняться на 1 элемент
ЗХ>5. как переключиться на папку D? (следующую по отношению к этой) клацнуть по Languages, в списке спуститься на 1 элемент

ЗХ>Any comments?


все конечно круто...но...
...ничего не напоминает?????...

вместо горизонтально-разделенного окна проводника получили контрол, совмещающий по функциональности дерево выбора папки и listview просмотра файлов, но только развернувшего все это по вертикали...

вот еще один вариант контрола для выбора файла...старенький правда, но посмею запостить:


видим где находимся...(размыто получилось)
видим список файлов в текущей директории
имеется возможность переключиться на другой том
предыдущуюю по уровню папку вижу по полному пути текущего положения...
Re: [Юзабилити-блог] Навигация по диску
От: Mamut Швеция http://dmitriid.com
Дата: 19.07.05 06:43
Оценка:
ЗХ>Экспонат три: Древосписок имени Кодта
ЗХ>

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


dmitriid.comGitHubLinkedIn
Re[2]: [Юзабилити-блог] Навигация по диску
От: Зверёк Харьковский  
Дата: 19.07.05 06:54
Оценка:
Здравствуйте, DuШes, Вы писали:

ЗХ>>


DШ>все конечно круто...но...

DШ>
DШ>...ничего не напоминает?????...

DШ>вместо горизонтально-разделенного окна проводника получили контрол, совмещающий по функциональности дерево выбора папки и listview просмотра файлов, но только развернувшего все это по вертикали...


Отнюдь. Для моей большой библиотеки проводник даст тот же уровень понятности, что и вариант 2 (при этом он существенно крупнее, а мне важен размер):


тут, конечно, есть строка адреса, тулбар навигации и прочее — но это очень сильно увеличивает размер.

DШ>вот еще один вариант контрола для выбора файла...старенький правда, но посмею запостить:

DШ>

DШ>видим где находимся...(размыто получилось)

...если путь недлинный
DШ>видим список файлов в текущей директории
ыес.

DШ>имеется возможность переключиться на другой том

сомнительной частоты действие

DШ>предыдущуюю по уровню папку вижу по полному пути текущего положения...

...и, кстати, можешь к ней переключиться кликнув по [..] — но это уже в некоторой мере DOSовщина.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
FAQ — це мiй ай-кью!
Re[3]: [Юзабилити-блог] Навигация по диску
От: DuШes  
Дата: 19.07.05 07:06
Оценка:
Здравствуйте, Зверёк Харьковский, Вы писали:

[...]
DШ>>все конечно круто...но...
DШ>>
DШ>>...ничего не напоминает?????...

DШ>>вместо горизонтально-разделенного окна проводника получили контрол, совмещающий по функциональности дерево выбора папки и listview просмотра файлов, но только развернувшего все это по вертикали...


ЗХ>Отнюдь. Для моей большой библиотеки проводник даст тот же уровень понятности, что и вариант 2 (при этом он существенно крупнее, а мне важен размер):

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

со всем согласен..
Re[3]: [Юзабилити-блог] Навигация по диску
От: DuШes  
Дата: 19.07.05 07:13
Оценка:
Здравствуйте, Зверёк Харьковский, Вы писали:
[вдогонку...]

как вариант сократить размер верней части древовидного представления текущего положения — представить в виде совокупности гиперссылок:
d:\work!\base\documents\languages\c# — надеюсь, мысль понятна??? ... можно говорить о том что строка пути будет очень большой и тп., но я думаю, что такая же проблема будет и при отображении полного пути вниз по дереву — добавится необходимость дополнительного скролла вниз...
Re: [Юзабилити-блог] Навигация по диску
От: Ranger_XL  
Дата: 19.07.05 07:38
Оценка:
и нафига вам столько папок
Re[4]: [Юзабилити-блог] Навигация по диску
От: Alexey Axyonov Украина  
Дата: 19.07.05 09:03
Оценка: 1 (1) +1
Здравствуйте, DuШes, Вы писали:

DШ>Здравствуйте, Зверёк Харьковский, Вы писали:

DШ>[вдогонку...]

DШ>как вариант сократить размер верней части древовидного представления текущего положения — представить в виде совокупности гиперссылок:

DШ>d:\work!\base\documents\languages\c# — надеюсь, мысль понятна??? ... можно говорить о том что строка пути будет очень большой и тп., но я думаю, что такая же проблема будет и при отображении полного пути вниз по дереву — добавится необходимость дополнительного скролла вниз...

Этаким путем вы придете к тому, что было в ранних билдах Longhorn:

[d:\/][work!\/][base\/][documents\/][languages\/][c++\/]
----------------------
| ... |
| C# |
| C++ |
| D |
| ... |
----------------------

Плюс список содержиомого текущей папки под этим тулбаром.
\/ — обозначает выпадающее меню.


1. как узнать, где мы находимся? видно и так.
2. как просмотреть список всех элементов в текущей папке? видно и так
3. как переключиться на папку Languages? (верхнюю по отношению к этой) тыкнуть в тулбаре на Languages
4. как переключиться на папку C#? (предыдущую по отношению к этой) тыкнуть в \/ возле С++ и выбрать C#
5. как переключиться на папку D? (следующую по отношению к этой)тыкнуть в \/ возле С++ и выбрать D

Интересно что в Longhorn сейчас.
... << RSDN@Home 1.2.0 alpha rev. 581>>
Re[5]: [Юзабилити-блог] Навигация по диску
От: Зверёк Харьковский  
Дата: 19.07.05 09:20
Оценка: +1
Здравствуйте, Alexey Axyonov, Вы писали:

DШ>>как вариант сократить размер верней части древовидного представления текущего положения — представить в виде совокупности гиперссылок:

DШ>>d:\work!\base\documents\languages\c# — надеюсь, мысль понятна??? ... можно говорить о том что строка пути будет очень большой и тп., но я думаю, что такая же проблема будет и при отображении полного пути вниз по дереву — добавится необходимость дополнительного скролла вниз...

AA>Этаким путем вы придете к тому, что было в ранних билдах Longhorn:


Поправил форматирование
[d:\/][work!\/][base\/][documents\/][languages\/][c++\/]
                                                    ----------------------
                                                    | ...                |
                                                    | C#                 |
                                                    | C++                |
                                                    | D                  |
                                                    | ...                |
                                                    ----------------------


AA>Плюс список содержиомого текущей папки под этим тулбаром.

AA>\/ — обозначает выпадающее меню.


AA>1. как узнать, где мы находимся? видно и так.

AA>2. как просмотреть список всех элементов в текущей папке? видно и так
AA>3. как переключиться на папку Languages? (верхнюю по отношению к этой) тыкнуть в тулбаре на Languages
AA>4. как переключиться на папку C#? (предыдущую по отношению к этой) тыкнуть в \/ возле С++ и выбрать C#
AA>5. как переключиться на папку D? (следующую по отношению к этой)тыкнуть в \/ возле С++ и выбрать D

AA>Интересно что в Longhorn сейчас.


В целом — таки да, вельми осмысленно.
Для меня — проблема в том, что тянется слишком далеко по горизонтали (мое дерево меньше вправо уползает, тем более там можно при уползании с отступами играться).
Хотя в целом идея выпадание папок, "параллельных данной" — она Мне именно этого не хватало в моей идеи — быстрого переключения к "параллельным".
Ну — винду местами хорошие юзабилисты лепят. А местами — кто попало
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
FAQ — це мiй ай-кью!
Re: [Юзабилити-блог] Навигация по диску
От: hitmark Беларусь Respect Soft
Дата: 22.07.05 08:16
Оценка:
Здравствуйте, Зверёк Харьковский, Вы что-то писали:



Экспонат ноль: "Правый список парентов" + листбокс

1. как узнать, где мы находимся? раскрыть "Правый список парентов"
2. как просмотреть список всех элементов в текущей папке? крутить вертикальный ползунок
3. как переключиться на папку Languages? (верхнюю по отношению к этой) раскрыть "Правый список парентов" и переключиться (после потери фокуса "Правый список парентов" автоматически скрывается) (в более продвинутых вариантах — нажать на кнопку "уровень вверх" возле "Правого списока парентов")
4. как переключиться на папку C#? (предыдущую по отношению к этой) Перейти в Languages, найти глазами C++, перейти в предыдущую
5. как переключиться на папку D? (следующую по отношению к этой) Перейти в Languages, найти глазами C++, перейти в следующую

Any comments?
Алексей
Re[2]: [Юзабилити-блог] Навигация по диску
От: Mamut Швеция http://dmitriid.com
Дата: 22.07.05 10:14
Оценка: +1
H>Экспонат ноль: "Правый список парентов" + листбокс
H>

ИМХО не стоит выдавать спиок файлов в папке в дереве каталогов — если файлов много, это неудобно (пример — ZDE)


dmitriid.comGitHubLinkedIn
Re: [Юзабилити-блог] Навигация по диску
От: adontz Грузия http://adontz.wordpress.com/
Дата: 24.07.05 22:55
Оценка:
Здравствуйте, Зверёк Харьковский, Вы писали:

Экспонат Х

<b>D:</b>\<b>!work</b>\<b>base</b>\<b>documents</b>\<b>Languages</b>\<b>C++</b>

file://D:\!work\base\documents\Languages\C++\_Compilers
file://D:\!work\base\documents\Languages\C++\_DocGenerators
file://D:\!work\base\documents\Languages\C++\_Libraries
file://D:\!work\base\documents\Languages\C++\_Rules-Standards-Styles
file://D:\!work\base\documents\Languages\C++\Alexandrescu
file://D:\!work\base\documents\Languages\C++\C++CLI
Common knowledge
effective c++
file://D:\!work\base\documents\Languages\C++\K_R
Thinking In C++
829.html
1442.html
1770.chm
3426.html



  1. как узнать, где мы находимся?

    Посмотреть наверх.

  2. как просмотреть список всех элементов в текущей папке?

    Поглядеть вниз.

  3. как переключиться на папку Languages? (верхнюю по отношению к этой)

    Нажать на её имя в строке вверху.

  4. как переключиться на папку C#? (предыдущую по отношению к этой)

    Нажать на имя папки Languages.
    При переходе уровнем выше та папка в которой мы были выделяется и помещается возможно ближе в видимому центру списка.
    Выбрать cреди подпапок папки Languages папку C#, она будет чуть выше центра

  5. как переключиться на папку D? (следующую по отношению к этой)

    Нажать на имя папки Languages.
    При переходе уровнем выше та папка в которой мы были выделяется и помещается возможно ближе в видимому центру списка.
    Выбрать cреди подпапок папки Languages папку D, она будет чуть ниже центра
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[2]: [Юзабилити-блог] Навигация по диску
От: adontz Грузия http://adontz.wordpress.com/
Дата: 24.07.05 23:03
Оценка:
Здравствуйте, adontz, Вы писали:

Хочешь узать как работать с каталогами? Открой Far Manager!
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[3]: [Юзабилити-блог] Навигация по диску
От: Зверёк Харьковский  
Дата: 26.07.05 17:13
Оценка:
Здравствуйте, adontz, Вы писали:

A>Хочешь узать как работать с каталогами? Открой Far Manager!


А чем он лучше Total Commander?
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
FAQ — це мiй ай-кью!
Re[2]: [Юзабилити-блог] Навигация по диску
От: Зверёк Харьковский  
Дата: 26.07.05 17:13
Оценка:
Здравствуйте, adontz, Вы писали:

A>Экспонат Х

A>
<b>D:</b>\<b>!work</b>\<b>base</b>\<b>documents</b>\<b>Languages</b>\<b>C++</b>

A>
file://D:\!work\base\documents\Languages\C++\_Compilers

A>file://D:\!work\base\documents\Languages\C++\_DocGenerators
A>file://D:\!work\base\documents\Languages\C++\_Libraries
A>file://D:\!work\base\documents\Languages\C++\_Rules-Standards-Styles
A>file://D:\!work\base\documents\Languages\C++\Alexandrescu
A>file://D:\!work\base\documents\Languages\C++\C++CLI
A>Common knowledge
A>effective c++
A>file://D:\!work\base\documents\Languages\C++\K_R
A>Thinking In C++
A>829.html
A>1442.html
A>1770.chm
A>3426.html
A>


Вот здесь
Автор: Зверёк Харьковский
Дата: 19.07.05
уже предлагалось и обсуждалось.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
FAQ — це мiй ай-кью!
Re[4]: [Юзабилити-блог] Навигация по диску
От: adontz Грузия http://adontz.wordpress.com/
Дата: 26.07.05 19:14
Оценка:
Здравствуйте, Зверёк Харьковский, Вы писали:

ЗХ>А чем он лучше Total Commander?


Евгением Рошалем!
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[3]: [Юзабилити-блог] Навигация по диску
От: adontz Грузия http://adontz.wordpress.com/
Дата: 26.07.05 19:19
Оценка:
Здравствуйте, Зверёк Харьковский, Вы писали:

ЗХ>Вот здесь
Автор: Зверёк Харьковский
Дата: 19.07.05
уже предлагалось и обсуждалось.


Нет, там чего-то выплывало, а у меня нечего не выплывает.

P.S. Хороший интерфейс это предсказуемый интерфейс. Все эти фенечки конечно хорошо, но что скажет пользователь разглядывая замысловатое окно выбора файла? Думаю он скажет, "да пошли вы..." и скачает программу конкурента.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[6]: [Юзабилити-блог] Навигация по диску
От: Alexey Axyonov Украина  
Дата: 27.07.05 10:25
Оценка:
AA>>Интересно что в Longhorn сейчас.

ЗХ>Ну — винду местами хорошие юзабилисты лепят. А местами — кто попало


Вот и посмотрим 3 августа чего они слепят в Windows Vista (WinVi) Beta1.
... << RSDN@Home 1.2.0 alpha rev. 598>>
Re: [Юзабилити-блог] Навигация по диску
От: Spidola Россия http://www.usametrics.ru
Дата: 28.07.05 22:43
Оценка:
Здравствуйте, Зверёк Харьковский, Вы писали:

ЗХ>Привет. Это программное заявление Комитета по Борьбе с Деревьями
Автор: Зверёк Харьковский
Дата: 06.04.05
.

Может быть модифицировать идею предыдущих ораторов в Вариант 1 или Вариант 2? Вариант 2 мне даже больше нравится...
Серые папки с двоеточиями перед названиями — те каталоги, внутри которых мы находимся. Ответы на ваши вопросы интуитивны, поэтому писать их не буду...

Мало того — достаточно просто в реализации... Графически можно ещё подработать — indent-ами там или ещё чем, однако идея, думаю, понятна..

RSDN@дома

Айзек Азимов — Покупаем Юпитер
Re[2]: [Юзабилити-блог] Навигация по диску
От: adontz Грузия http://adontz.wordpress.com/
Дата: 28.07.05 23:04
Оценка:
Здравствуйте, Spidola, Вы писали:

S>Ответы на ваши вопросы интуитивны, поэтому писать их не буду...


Ну вот, потять наворотили Для меня серые папки это most resently used list, disabled ещё что-то, но никак не родительские.
A journey of a thousand miles must begin with a single step © Lau Tsu
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.