CS>Этот зверь вообще имеет право на жизнь? CS>Если да то как оно примерно должно выглядеть?
CS>Как отобразить сам popup list ясно, а вот как должен выглядеть окно самого CS>combobox что-то я никак не придумаю...
Вообразить-то можно, вот только зачем? Потом, представьте пользователя, который выкинув список и выбрав элемент, ожидает его автоматического закрытия. А это чудо не закрывается, да ещё показывает два выбранных элемента (тут придётся отмечать не фоном, а галочками).
В закрытом виде показывайте список выбранных элементов через запятую:
[ alpha, gamma, delta ] [V]
----------------------------
| v alpha |
| beta |
| v gamma |
| v delta |
| omega |
----------------------------
Здравствуйте, c-smile, Вы писали:
CS>Этот зверь вообще имеет право на жизнь?
Нет, не имеет.
Комбобокс всем своим видом говорит: "Я одно значение из кучи возможных вариантов".
Да, имеет.
Комбобокс, "в глобальном смысле" — всего лишь поле ввода значения с выпадающим более сложным контролом для большего удобства ввода (в идеале, любым комбобоксом можно пользоваться без "выпадения").
CS>Если да то как оно примерно должно выглядеть?
CS>Как отобразить сам popup list ясно, а вот как должен выглядеть окно самого CS>combobox что-то я никак не придумаю...
Смотря для чего предназначено. Ключевые вопросы:
* можно ли ввести новое значение в список или обязательно выбрать одно значение из списка?
* сколько значений может быть выбрано одновременно?
* каков юз-кейс выбора значений? (их чаще выбирают в пустой контрол или сменяют; когда сменяют — то все или только один из нескольких и т.п.)
Короче, я к тому, что контрола такого уровня сложности одного на все случаи жизни существовать не может.
Здравствуйте, c-smile, Вы писали:
CS>А если они не помещаются? Горизонтальный scrollbar рисовать?
А вот если ещё и не помещаются, тогда однозначно — нафиг-нафиг.
Мысль: Пользовательский интерфейс — это штука из кубиков, заранее знакомых как пользователю, так и разработчику. Не стоит, наверное, так изобретать свои собственные кубики — стандартного набора элементов должно хватать выше крыши...
Здравствуйте, Xander Zerge, Вы писали:
CS>>А если они не помещаются? Горизонтальный scrollbar рисовать?
XZ>А вот если ещё и не помещаются, тогда однозначно — нафиг-нафиг.
XZ>Мысль: Пользовательский интерфейс — это штука из кубиков, заранее знакомых как пользователю, так и разработчику. Не стоит, наверное, так изобретать свои собственные кубики — стандартного набора элементов должно хватать выше крыши...
Кубики — типовым многоэтажкам. Для уникальных зданий надобно чего-нито посложнее.
Здравствуйте, Зверёк Харьковский, Вы писали:
XZ>>Мысль: Пользовательский интерфейс — это штука из кубиков, заранее знакомых как пользователю, так и разработчику. Не стоит, наверное, так изобретать свои собственные кубики — стандартного набора элементов должно хватать выше крыши...
ЗХ>Кубики — типовым многоэтажкам. Для уникальных зданий надобно чего-нито посложнее.
Не путайте фасад-оформление контролов с функциональностью. Даже в уникальных зданиях водопроводные краны открываются против часовой стрелки, окна застеклены, освещение — на потолке, ковры — на полу и стенах и т.д. и т.п.
Не надо заставлять пользователя изучать интерфейс каждой замечательной программы.
Здравствуйте, Xander Zerge, Вы писали:
XZ>>>Мысль: Пользовательский интерфейс — это штука из кубиков, заранее знакомых как пользователю, так и разработчику. Не стоит, наверное, так изобретать свои собственные кубики — стандартного набора элементов должно хватать выше крыши...
ЗХ>>Кубики — типовым многоэтажкам. Для уникальных зданий надобно чего-нито посложнее.
XZ>Не путайте фасад-оформление контролов с функциональностью. Даже в уникальных зданиях водопроводные краны открываются против часовой стрелки, окна застеклены, освещение — на потолке, ковры — на полу и стенах и т.д. и т.п.
XZ>Не надо заставлять пользователя изучать интерфейс каждой замечательной программы.
Короче говоря, вопрос упирается в "крупность" тех элементов, которые должны быть привычными. Можно говорить о том, что "привычность" должны быть на уровне "это кнопка, это поле ввода" (на этом уровне возражений не имею).
А можно говорить о том, что кроме 10 стандартных контролов (грубо говоря, панели "Standard" в Борландовском наборе контролов), ничего другого в интерфейсе использовать нельзя. С этим я согласиться, извините, не могу.
Здравствуйте, c-smile, Вы писали: CS>Как отобразить сам popup list ясно, а вот как должен выглядеть окно самого CS>combobox что-то я никак не придумаю...
Я считаю, что все такие контролы должны быть popup а не dropdown. dropdown подходит только для случаев, когда можно сделать выбор одним кликом (ну или максимум несколькими).
А здесь — у нас же есть стандартный list separator в настройках локали, верно? Вот и надо выбранные значения перечислить через него.
1.1.4 stable rev. 510
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, c-smile, Вы писали:
CS>А если они не помещаются? Горизонтальный scrollbar рисовать?
Никаких скроллов. Это же обычный однострочный текстбокс.
1.1.4 stable rev. 510
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Зверёк Харьковский, Вы писали:
ЗХ>Короче говоря, вопрос упирается в "крупность" тех элементов, которые должны быть привычными. Можно говорить о том, что "привычность" должны быть на уровне "это кнопка, это поле ввода" (на этом уровне возражений не имею).
ЗХ>А можно говорить о том, что кроме 10 стандартных контролов (грубо говоря, панели "Standard" в Борландовском наборе контролов), ничего другого в интерфейсе использовать нельзя. С этим я согласиться, извините, не могу.
Ну, это — к Borland-у. А так — есть стандартные Windows-контролы.
И мне трудно представить ситуацию, в которой с их помощью не удалось бы создать понятный и удобный интерфейс любого программного продукта.
Кроме, наверное, таких специальных вещей, которые имитируют панели управления каких-нибудь железок, музыкальных, например.
Но и здесь — такие имитаторы интуитивно понятны и знакомы людям, работающим с реальными музыкальными железяками.
Я же, как любитель, поставив тот же Cakewalk долго и тупо смотрел на эти ручечки, движочечки, лампочки, огоньки и пр., не зная даже с какой стороны чего вертеть и куда давить.
Вот тут-то я и заценил ощущения пользователя, привыкшего к стандартным контролам, а потом натыкающегося на очередной "шедевр-открытие" в виде программного продукта, функциональность которого требует десяти секунд работы в день.
Например, ZoneAlarm. Настроек — минимум, настраивание требуется раз в месяц, а то и вообще — раз при установке.
Но интерфейс же таков, что распихано там по трём уровням, да так, что сразу и не поймёшь, что — где.
Я не против красивых кнопочек, рюшечек и бантиков. Но кнопка должна беглым взглядом опознаваться как кнопка и работать как кнопка. Более того, ничего другого не должно выглядеть как кнопка и, тем более, не работать как кнопка.
Здравствуйте, Xander Zerge, Вы писали:
ЗХ>>Короче говоря, вопрос упирается в "крупность" тех элементов, которые должны быть привычными. Можно говорить о том, что "привычность" должны быть на уровне "это кнопка, это поле ввода" (на этом уровне возражений не имею).
ЗХ>>А можно говорить о том, что кроме 10 стандартных контролов (грубо говоря, панели "Standard" в Борландовском наборе контролов), ничего другого в интерфейсе использовать нельзя. С этим я согласиться, извините, не могу.
XZ>Ну, это — к Borland-у. А так — есть стандартные Windows-контролы. XZ>И мне трудно представить ситуацию, в которой с их помощью не удалось бы создать понятный и удобный интерфейс любого программного продукта.
Есть дурное рисовальчество (попытка имитации реального мира) — о нем-то ты и говорил, когда рассуждал про Cakewalk/ZoneAlarm; а есть новые контролы, выполняющие новые функции, или старые функции новым образом.
CS>Этот зверь вообще имеет право на жизнь? CS>Если да то как оно примерно должно выглядеть?
CS>Как отобразить сам popup list ясно, а вот как должен выглядеть окно самого CS>combobox что-то я никак не придумаю...
так выглядит выпадающая часть комбобокса в Excel в сводной таблице, в данном случае при подключении к OLAP
Здравствуйте, Зверёк Харьковский, Вы писали:
ЗХ>Есть дурное рисовальчество (попытка имитации реального мира) — о нем-то ты и говорил, когда рассуждал про Cakewalk/ZoneAlarm; а есть новые контролы, выполняющие новые функции, или старые функции новым образом.
Панели Cakewalk и VST как раз используют стандартные (музыкально-железячные) интерфейсы.
А вот рисовальщество ZoneAlarm никак не нужно.
А соответствие внешнего вида и функции, выполняемой контролом не должно быть многозначным, чтобы пользователей не вводить в заблуждение.
Честно говоря, приведённое там решение с точки зрения юзабилити не отвечает парадигме "дерево". Оно для того и нужно, чтобы открыть несколько веток и переключаться между ними. В приведённом примере это невозможно и ненаглядно. Это и не дерево вовсе получается.
XZ>Честно говоря, приведённое там решение с точки зрения юзабилити не отвечает парадигме "дерево". Оно для того и нужно, чтобы открыть несколько веток и переключаться между ними. В приведённом примере это невозможно и ненаглядно. Это и не дерево вовсе получается.