Страница 1 из 2

Browse Header icon

Добавлено: 25 Ноябрь 2020, 17:43
gopstop2007
Есть стандартный Browse в котором есть колонка с флагами (вкл./выкл.) - иконками (чекет - on/off), как сделать в header только этой колонки иконку чекет (on/off) по которой можно было щелкнуть и отмечались / разотмечались все записи?

Спасибо за внимание.

Browse Header icon

Добавлено: 25 Ноябрь 2020, 20:31
Игорь Столяров
Что подобное не так давно в форуме обсуждали ... меня подобные дизайны не интересуют, поэтому не запомнил.
Ищите поиском. А сделать кнопку (и / или пункт контекстного меню на списке): "ВЫБРАТЬ ВСЕ [CTRL+A]" - не круто ?
Или Вам обязательно, что бы юзер мог выполнить это действие только мышкой - попав недрогнувшей рукой в пимпочку ? ;)

Browse Header icon

Добавлено: 26 Ноябрь 2020, 16:21
kreator
Источник - viewtopic.php?p=15230#p15230. Моя реализация - viewtopic.php?p=42073#p42073. Класса, шаблона нет. Вроде как мелочь и не часто нужно.
Есть идея и даже условный заказчик - сделать фильтр а-ля Excel. Вот там всё это нужно. Но я сейчас не в состоянии. Может чуть позже.
Игорь Столяров писал(а): 25 Ноябрь 2020, 20:31 А сделать кнопку (и / или пункт контекстного меню на списке): "ВЫБРАТЬ ВСЕ [CTRL+A]" - не круто ?
Ctrl+A - устоявшаяся комбинация. А вот "Снять выделение" нету. Каждая программа сама придумывает. А тут ещё подсказывают - а если клавиатуры нет?
Разместить кнопку на заголовке списка - решение, которое само напрашивается. Только можно навтыкать разработчикам Клариона за отсутствие этого функционала.

Browse Header icon

Добавлено: 26 Ноябрь 2020, 17:46
finsoftrz
А если надо не только выделить, но и снять выделение. Или инвертировать. Мягко говоря, спорное утверждение о необходимости подобного функционала. Скорее, на любителя.

Browse Header icon

Добавлено: 26 Ноябрь 2020, 18:00
kreator
"Снять выделение" галка в заголовке вопрос решает. Инверсия? Вот это на любителя. Опять же, устойчивой комбинации клавиш для инверсии нет. И ещё. Если Вы фанат Винды, посмотрите как работают майкрософтовские программы в этом контексте. Проводник, Эксель...

Browse Header icon

Добавлено: 26 Ноябрь 2020, 18:13
Игорь Столяров
kreator писал(а): 26 Ноябрь 2020, 16:21 А вот "Снять выделение" нету.
Уже придумали лет 30 назад - в книжке "Графические интерфейсы IBM". :)
(По ней кстати делали и Windows и OS/2 и прочие Linux'ы)
Ctrl+A(ll) - выбрать всё
Ctrl+D(elete) - удалить, убрать
Ctrl+I(nvert) - обратить

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

1.jpg
1.jpg (31.12 КБ) 2279 просмотров
kreator писал(а): 26 Ноябрь 2020, 16:21 Разместить кнопку на заголовке списка - решение
Я как-то уже говорил, своё мнение, что данный прибамбас - это из Web дизайна.
Так можно хорошо, красиво и удобно выбрать 30 писем на текущем листе в почтовом сервисе.
Но случайно ткнуть такую "опцию" на списке товара в 30 тыс. записей - беда ... :(

Browse Header icon

Добавлено: 26 Ноябрь 2020, 18:46
kreator
Игорь Столяров писал(а): 26 Ноябрь 2020, 18:13 Но случайно ткнуть такую "опцию" на списке товара в 30 тыс. записей - беда ...
Никто не говорит, что надо делать везде. Дело-то не в этом. А в наших возможностях. Заказчик просит дать ему такую возможность. Где-то я могу объяснить, что это чревато, а где-то нет. То, что штука удобная во многих случаях, сомнений нет. Кстати, почему беда поставить галку на списке товара в 30 тыс. записей?
Игорь Столяров писал(а): 26 Ноябрь 2020, 18:13 Уже придумали лет 30 назад - в книжке "Графические интерфейсы IBM".
(По ней кстати делали и Windows и OS/2 и прочие Linux'ы)
Ctrl+A(ll) - выбрать всё
Ctrl+D(elete) - удалить, убрать
Ctrl+I(nvert) - обратить
Предлагаю Вам нажать Ctrl+D в проводнике. Но сначала надо зайти в папку с очень важными файлами и выделить их все. :D

Browse Header icon

Добавлено: 26 Ноябрь 2020, 18:58
Игорь Столяров
kreator писал(а): 26 Ноябрь 2020, 18:46 Кстати, почему беда поставить галку на списке товара в 30 тыс. записей?
Ну потому, что это в любом случае не будет совсем быстро ... :)
kreator писал(а): 26 Ноябрь 2020, 18:46 Но сначала надо зайти в папку с очень важными файлами и выделить их все.
Здесь как со стрельбой из пистолета: можно прицелиться в мишень, а можно приставить к голове.
Результат будет потрясающе - разный. В прямом смысле слова. ;) Не надо всего бояться. :)

Browse Header icon

Добавлено: 26 Ноябрь 2020, 20:15
finsoftrz
kreator писал(а): 26 Ноябрь 2020, 18:00 "Снять выделение" галка в заголовке вопрос решает. Инверсия? Вот это на любителя. Опять же, устойчивой комбинации клавиш для инверсии нет. И ещё. Если Вы фанат Винды, посмотрите как работают майкрософтовские программы в этом контексте. Проводник, Эксель...
Галочка в заголовке колонки не решает. У нас не 2 состояния, выделено или не выделено все. Это значит, что придется два раза щелкать по заголовку, если надо отменить несколько помеченных записей, что не очень очевидно для пользователя.
Еще я бы добавил, что важно соблюдать унификацию интерфейса. Если в одном диалоге какая-то функция делается одним способом, то и в другом диалоге пользователь ожидает, что аналогичная функция будет делаться аналогично. Поэтому я бы не стал креативить в отдельном диалоговом окне.
У себя в этом вопросе я придерживаюсь такого правила. Если массовое выделение строк редкая функция, то убирается в контекстное меню. Примерно, как у Игоря на скриншоте, только я предпочитаю без пиктограмм. Если функция несет повышенную нагрузку (то есть пользователи могут к ней часто обращаться), то используется контрол шаблон с 2 кнопками иконками, выделить все и отменить выделение, располагаемыми под колонкой с отметками. Это в дополнение к контекстному меню.

Browse Header icon

Добавлено: 27 Ноябрь 2020, 0:03
kreator
finsoftrz писал(а): 26 Ноябрь 2020, 20:15 Галочка в заголовке колонки не решает. У нас не 2 состояния, выделено или не выделено все. Это значит, что придется два раза щелкать по заголовку, если надо отменить несколько помеченных записей, что не очень очевидно для пользователя.
Не понятно. В моём видео всё видно. Какие два щелчка?
Опять же непонятно причём здесь унификация интерфейса?

Browse Header icon

Добавлено: 27 Ноябрь 2020, 1:06
RaFaeL
finsoftrz писал(а): 26 Ноябрь 2020, 20:15 используется контрол шаблон с 2 кнопками иконками, выделить все и отменить выделение, располагаемыми под колонкой с отметками.
У нас так сделано. Но тут проблема в том, что придется отключать пользовательскую настройку таблицы для этого списка, не давать эти колонки ни раздвигать, ни местами менять

Browse Header icon

Добавлено: 27 Ноябрь 2020, 8:46
finsoftrz
Можно одну эту колонку зафиксировать. У меня она всегда первая.

Browse Header icon

Добавлено: 27 Ноябрь 2020, 8:49
finsoftrz
kreator писал(а): 27 Ноябрь 2020, 0:03
finsoftrz писал(а): 26 Ноябрь 2020, 20:15 Галочка в заголовке колонки не решает. У нас не 2 состояния, выделено или не выделено все. Это значит, что придется два раза щелкать по заголовку, если надо отменить несколько помеченных записей, что не очень очевидно для пользователя.
Не понятно. В моём видео всё видно. Какие два щелчка?
Опять же непонятно причём здесь унификация интерфейса?
Например, у Вас отмечены 3 строки из 10. Надо отметить все.

Browse Header icon

Добавлено: 27 Ноябрь 2020, 8:59
kreator
finsoftrz писал(а): 27 Ноябрь 2020, 8:49 Например, у Вас отмечены 3 строки из 10. Надо отметить все.
Это кнопка. Она работает независимо от того, что отмечено в списке. У кнопки два состояния - "Выделено всё", "Не выделено ничего". Аналог check.

Browse Header icon

Добавлено: 27 Ноябрь 2020, 9:13
finsoftrz
И что, сколько раз эту кнопку нажать надо в приведенном примере?