Как узнать?

Clarion, Clarion 7

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

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Как узнать?

Сообщение Дед Пахом »

Любопытное решение, вот вопрос есть - как ты отслеживаешь, над каким из листов мышь?
С уважением, ДП
dsabitov
Посетитель
Сообщения: 44
Зарегистрирован: 02 Апрель 2011, 12:30

Как узнать?

Сообщение dsabitov »

Паспорт.. да.. оплошка. Но ведь тут все единомышленники?...:)
Над каким из листов мышь? В каждый момент времени только 1 окно активно (хотя управлять поведением других можно - но не в этом примере). Как только появилось окно с подсказкой с листом выбора - оно активно и у него свои события, актуальные на момент появления. То есть, мне нужно, чтобы пользователь нажал escape (или Ctrl-F4 - что угодно, чтобы закрыть возникшую подсказку) или выбрал нажатием мышки появившуюся ссылку и провалился в нее... Если же быть ближе к простому ToolTip - можно в Accept... End написать закрытие нового окошка по любому событию - и при любом действии пользователя окошко исчезнет.
dsabitov
Посетитель
Сообщения: 44
Зарегистрирован: 02 Апрель 2011, 12:30

Как узнать?

Сообщение dsabitov »

kreator писал(а): Навожу указатель мыши - это означает нажимаю?
Нет - не нажимаю.
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Как узнать?

Сообщение kreator »

dsabitov писал(а):Нет - не нажимаю.
Вопрос-то в том, как отследить мышь над листом. Как у Вас реализовано это? Какое событие при "навожу указатель мыши"?
We are hard at work… for you. :)
dsabitov
Посетитель
Сообщения: 44
Зарегистрирован: 02 Апрель 2011, 12:30

Как узнать?

Сообщение dsabitov »

Я не зря написал "Свойства PROPLIST:MouseMoveRow и PROPLIST:MouseMoveField "живые"!" - эти свойства в реальном времени содержат значение CHOICE для листа и значение номера колонки над которой находится мышь. Вы можете проверять значения этих свойств при наступлении любого события (не обязательно жать мышкой на лист!) - они всегда правильные! Я их проверяю в событии EVENT:Tmer.
Shur
Ветеран
Сообщения: 384
Зарегистрирован: 02 Июль 2011, 18:49

Как узнать?

Сообщение Shur »

kreator писал(а): Кларионовский лист беден и убог
Эх, креатор, креатор!
:D
А если серьёзно, то в этом что-то есть. Надо подумать, где применить.
Аватара пользователя
morkovin
Ветеран
Сообщения: 935
Зарегистрирован: 20 Июль 2005, 14:53
Откуда: Volgograd, Russia
Благодарил (а): 9 раз
Поблагодарили: 4 раза
Контактная информация:

Как узнать?

Сообщение morkovin »

Шаблончик бы...
WBR, morkovin
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8028
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Как узнать?

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

Я так понял, что вопрос темы исчерпан (найдено решение). Есть еще один "старый проблем" с LIST.

Можно ли как-то вырубить resize (изменение ширины колонок) в списке, оставив его только в строке шапки списка ?
(как это в общем-то и делается во всех других системах, кроме Clarion)
Make Clarion Great Again ! 😎
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Как узнать?

Сообщение kreator »

Shur писал(а):Эх, креатор, креатор!

А если серьёзно, то в этом что-то есть. Надо подумать, где применить.
Согласен! Век живи - век учись! Действительно данные свойства отрабатывают. Будем знать. Но я бы не стал заморачиваться, сделал бы обычным ToolTip. Кстати закрывать "всплывающее" окно можно опять же по таймеру или по потере фокуса (как popup menu).
Игорь Столяров писал(а):Можно ли как-то вырубить resize (изменение ширины колонок) в списке, оставив его только в строке шапки списка ?
(как это в общем-то и делается во всех других системах, кроме Clarion)
Присоединяюсь к пожеланию. Когда right border есть, то ещё куда ни шло, а когда нет, то, действительно, выглядит диковато.
А я вот столкнулся ещё с одним нюансом (может, мелким). Если я случайно попадаю в этот самый "right border" (не важно - присутствует он или нет), курсор перескакивает на нужный ряд, а событие NewSelection не происходит. Туплю?
We are hard at work… for you. :)
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Как узнать?

Сообщение kreator »

Народ, а кто может заслать в треккер (или как там его) SV озвученные мной и Игорем Столяровым проблемы (оставить ресайз только на заголовке списка и, заодно, исправить несрабатывание EVENT:NewSelection при попадании на границу столбцов)? У меня пользователи на планшете часто попадают пальцем в эту самую границу (причём невидимую). Жалуются.
We are hard at work… for you. :)
Shur
Ветеран
Сообщения: 384
Зарегистрирован: 02 Июль 2011, 18:49

Как узнать?

Сообщение Shur »

kreator писал(а): У меня пользователи на планшете часто попадают пальцем в эту самую границу (причём невидимую). Жалуются.
Только что пришло в голову. А что если пока суть да дело прикрыть границы столбцов тонкими во всю длину region'ами? Тоже невидимыми.
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Как узнать?

Сообщение kreator »

Shur писал(а):Только что пришло в голову. А что если пока суть да дело прикрыть границы столбцов тонкими во всю длину region'ами? Тоже невидимыми.
И что? Не будет позиционирования при попадании в регион? А горизонтальное скроллирование списка? Тяжко. Может попробовать отследить попадание в границу через LISTZONE:Right? Кто-нибудь делал? Или это актуально для Header'ов?
We are hard at work… for you. :)
Shur
Ветеран
Сообщения: 384
Зарегистрирован: 02 Июль 2011, 18:49

Как узнать?

Сообщение Shur »

Kreator, придумал оригинальное решение, может подойдёт.
Делаем так. У листа надо сделать popup. В нём сделать единственный пункт с галочкой Enable column resize.
При нажатии проходшь циклом по колонкам и ставишь

Код: Выделить всё

?List{PROPLIST:Resize,x} = {1|0} -- в зависимости поставил или снял галку
после чего можно отресайзить колонки как нравится и снять галку -- как бы зафиксировать их.
Пользователи с планшетами будут рады.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8028
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Как узнать?

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

Shur писал(а): после чего можно отресайзить колонки как нравится и снять галку -- как бы зафиксировать их.
Кстати, идея крутая ! Неожиданное решение. Надо попробовать, если действительно будет работать - супер !
Make Clarion Great Again ! 😎
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Как узнать?

Сообщение kreator »

Если столбцы не Resizable, то проблемы нет. Поэтому пока убрал возможность ресайза. Вообще не уверен, что нужно это при работе пальцами. И, всё-таки, нужно толкнуть SV, чтобы оставили возможность ресайза только на хэдере. Если так будет, то и "моя" проблема исчезнет.
We are hard at work… for you. :)
Ответить