Browse Header icon

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Browse Header icon

Сообщение gopstop2007 »

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

Спасибо за внимание.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7327
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Browse Header icon

Сообщение Игорь Столяров »

Что подобное не так давно в форуме обсуждали ... меня подобные дизайны не интересуют, поэтому не запомнил.
Ищите поиском. А сделать кнопку (и / или пункт контекстного меню на списке): "ВЫБРАТЬ ВСЕ [CTRL+A]" - не круто ?
Или Вам обязательно, что бы юзер мог выполнить это действие только мышкой - попав недрогнувшей рукой в пимпочку ? ;)
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Browse Header icon

Сообщение kreator »

Источник - viewtopic.php?p=15230#p15230. Моя реализация - viewtopic.php?p=42073#p42073. Класса, шаблона нет. Вроде как мелочь и не часто нужно.
Есть идея и даже условный заказчик - сделать фильтр а-ля Excel. Вот там всё это нужно. Но я сейчас не в состоянии. Может чуть позже.
Игорь Столяров писал(а): 25 Ноябрь 2020, 20:31 А сделать кнопку (и / или пункт контекстного меню на списке): "ВЫБРАТЬ ВСЕ [CTRL+A]" - не круто ?
Ctrl+A - устоявшаяся комбинация. А вот "Снять выделение" нету. Каждая программа сама придумывает. А тут ещё подсказывают - а если клавиатуры нет?
Разместить кнопку на заголовке списка - решение, которое само напрашивается. Только можно навтыкать разработчикам Клариона за отсутствие этого функционала.
We are hard at work… for you. :)
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4560
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Browse Header icon

Сообщение finsoftrz »

А если надо не только выделить, но и снять выделение. Или инвертировать. Мягко говоря, спорное утверждение о необходимости подобного функционала. Скорее, на любителя.
C6/C11, ШВС, tps/btrieve.
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Browse Header icon

Сообщение kreator »

"Снять выделение" галка в заголовке вопрос решает. Инверсия? Вот это на любителя. Опять же, устойчивой комбинации клавиш для инверсии нет. И ещё. Если Вы фанат Винды, посмотрите как работают майкрософтовские программы в этом контексте. Проводник, Эксель...
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7327
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Browse Header icon

Сообщение Игорь Столяров »

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 КБ) 2195 просмотров
kreator писал(а): 26 Ноябрь 2020, 16:21 Разместить кнопку на заголовке списка - решение
Я как-то уже говорил, своё мнение, что данный прибамбас - это из Web дизайна.
Так можно хорошо, красиво и удобно выбрать 30 писем на текущем листе в почтовом сервисе.
Но случайно ткнуть такую "опцию" на списке товара в 30 тыс. записей - беда ... :(
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Browse Header icon

Сообщение 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
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7327
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Browse Header icon

Сообщение Игорь Столяров »

kreator писал(а): 26 Ноябрь 2020, 18:46 Кстати, почему беда поставить галку на списке товара в 30 тыс. записей?
Ну потому, что это в любом случае не будет совсем быстро ... :)
kreator писал(а): 26 Ноябрь 2020, 18:46 Но сначала надо зайти в папку с очень важными файлами и выделить их все.
Здесь как со стрельбой из пистолета: можно прицелиться в мишень, а можно приставить к голове.
Результат будет потрясающе - разный. В прямом смысле слова. ;) Не надо всего бояться. :)
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4560
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Browse Header icon

Сообщение finsoftrz »

kreator писал(а): 26 Ноябрь 2020, 18:00 "Снять выделение" галка в заголовке вопрос решает. Инверсия? Вот это на любителя. Опять же, устойчивой комбинации клавиш для инверсии нет. И ещё. Если Вы фанат Винды, посмотрите как работают майкрософтовские программы в этом контексте. Проводник, Эксель...
Галочка в заголовке колонки не решает. У нас не 2 состояния, выделено или не выделено все. Это значит, что придется два раза щелкать по заголовку, если надо отменить несколько помеченных записей, что не очень очевидно для пользователя.
Еще я бы добавил, что важно соблюдать унификацию интерфейса. Если в одном диалоге какая-то функция делается одним способом, то и в другом диалоге пользователь ожидает, что аналогичная функция будет делаться аналогично. Поэтому я бы не стал креативить в отдельном диалоговом окне.
У себя в этом вопросе я придерживаюсь такого правила. Если массовое выделение строк редкая функция, то убирается в контекстное меню. Примерно, как у Игоря на скриншоте, только я предпочитаю без пиктограмм. Если функция несет повышенную нагрузку (то есть пользователи могут к ней часто обращаться), то используется контрол шаблон с 2 кнопками иконками, выделить все и отменить выделение, располагаемыми под колонкой с отметками. Это в дополнение к контекстному меню.
C6/C11, ШВС, tps/btrieve.
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Browse Header icon

Сообщение kreator »

finsoftrz писал(а): 26 Ноябрь 2020, 20:15 Галочка в заголовке колонки не решает. У нас не 2 состояния, выделено или не выделено все. Это значит, что придется два раза щелкать по заголовку, если надо отменить несколько помеченных записей, что не очень очевидно для пользователя.
Не понятно. В моём видео всё видно. Какие два щелчка?
Опять же непонятно причём здесь унификация интерфейса?
We are hard at work… for you. :)
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Browse Header icon

Сообщение RaFaeL »

finsoftrz писал(а): 26 Ноябрь 2020, 20:15 используется контрол шаблон с 2 кнопками иконками, выделить все и отменить выделение, располагаемыми под колонкой с отметками.
У нас так сделано. Но тут проблема в том, что придется отключать пользовательскую настройку таблицы для этого списка, не давать эти колонки ни раздвигать, ни местами менять
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4560
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Browse Header icon

Сообщение finsoftrz »

Можно одну эту колонку зафиксировать. У меня она всегда первая.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4560
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Browse Header icon

Сообщение finsoftrz »

kreator писал(а): 27 Ноябрь 2020, 0:03
finsoftrz писал(а): 26 Ноябрь 2020, 20:15 Галочка в заголовке колонки не решает. У нас не 2 состояния, выделено или не выделено все. Это значит, что придется два раза щелкать по заголовку, если надо отменить несколько помеченных записей, что не очень очевидно для пользователя.
Не понятно. В моём видео всё видно. Какие два щелчка?
Опять же непонятно причём здесь унификация интерфейса?
Например, у Вас отмечены 3 строки из 10. Надо отметить все.
C6/C11, ШВС, tps/btrieve.
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Browse Header icon

Сообщение kreator »

finsoftrz писал(а): 27 Ноябрь 2020, 8:49 Например, у Вас отмечены 3 строки из 10. Надо отметить все.
Это кнопка. Она работает независимо от того, что отмечено в списке. У кнопки два состояния - "Выделено всё", "Не выделено ничего". Аналог check.
We are hard at work… for you. :)
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4560
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Browse Header icon

Сообщение finsoftrz »

И что, сколько раз эту кнопку нажать надо в приведенном примере?
C6/C11, ШВС, tps/btrieve.
Ответить