• 0
Вячеслав

Использование жестов при развернутом окне Metropolis

Вопросы

Всем доброго дня! Озадачился работой с жестами и все было хорошо, жесты ловятся, выводятся в Мемо, как в хелпе. НО: когда форма выводится в стиле Metropolis (на полный экран, значков закрытия, сворачивания и разворачивания программы нет), то жесты почему-то отваливаются, Мемо ничего не выводит, событие OnGesture не срабатывает.

Пишу под сенсорный экран компа. Версия Rad Studio XE5

Никто не сталкивался с таким?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 ответов на этот вопрос

  • 0

Отпишусь, пожалуй, подробнее. Сегодня более внимательно исследовал проблему, в итоге жесты перестают отлавливаться FireMonkey в режиме, когда у формы BorderStyle стоит значение bsNone. Т.е. не важно, развернуто окно или нет, но если нет значков закрыть/свернуть/развернуть, то жесты не работают. По всем канонам форума наваял простенькое приложение, в котором видны симптомы. Также проверил на VCL - там все в порядке, проблемы только с FireMonkey.

FM_Gestures.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Ярослав, добрый день! Думаю, с моей стороны назойливо спрашивать, но Вы смотрели проект? Просто у меня сейчас стоит дилемма о том, отказываться ли от жестов или от полноэкранного режима отображения. Либо искать обходные пути, вроде задания координат и размеров формы при запуске.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Добрый вечер,

Багу проверили и завели. Workaround постараюсь посмотреть на неделе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Добрый вечер, Ярослав! Хочу поделиться еще одним интересным фактом: сегодня проверил данную проблему на другом компьютере, версия RAD Studio XE3 и все завелось без проблем. Таким образом начинаю сомневаться в том, что это баг ФМ, возможно, просто на моей машине по каким-то причинам на XE5 не хотят запускаться жесты при bsNone. Быть может не хватает каких-либо библиотек. Не подскажете, каким образом это лучше всего проверить? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Добрый день, 

 

Нет, это ошибка. Ее уже завалидировали.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Хм, а есть возможность ее обойти в 5 версии RAD Studio? Или только в более поздних версиях будет исправлено?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Ура, проблема решена! Вернее, глюк остался, но теперь его влияние локализовано. Для меня важным было использование жестов при полноэкранном режиме отображения без рамки. В Delphi XE7 это достигается путем установки свойства формы FullScreen в True, при этом BorderStyle необходимо оставить Sizeable. Тогда жесты работают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Builder c++ XE8. та же проблема, отваливаются жесты при FullScreen в Firemonkey.описанным методом проблема не решается. буду признателен за любую помощь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Проблема еще актуально ? Rad studio 10  тоже отваливаются жесты при  BorderStyle и FullScreen в Firemonkey

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Жесты могут также отвалиться, если вы включите свойство формы Transparency. Немаловажно то, что оно плохо дружит со многими функциями WinAPI. Да, проблема актуальна

Изменено пользователем МихаилЪ чайковЪ

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Похоже, указанная проблема осталась и в Delphi 10 Seattle и в Delphi 10.1 Berlin. Или она возникает еще от каких-то причин, мне неведомых. Тоже хотел сделать приложение для сенсорного стола - жесты не работают в режиме Fullscreen или при установке свойства BorderStyle=None. Что же делать? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От Alesk
      Как подключить gesturemanager1 к кнопке созданной в runtime?
      Когда пишу эту строчку
      izm[ii].Touch.GestureManager:=GestureManager1; ругается на Gesturemanager1
      izm[ii] - массив из tbutton
    • От Алекс
      Добрый день!
      Однажды на форуме обсуждалась тема как сделать переключение вкладок TabControl  с анимацией через TActionList.
      Сейчас возникла необходимость переключать вкладки через жест pan? т.е. чтобы вкладка двигалась за пальцем пользователя (как это сделано практически во всех мобильных приложениях, например в фейсбуке. Ниже скрин, на котором показаны по половине обе вкладки, они в этот момент перетаскиваются пальцем).
      Это реально сделать? Если да, то как? Я уже подозреваю, что табом такого не сделаешь, а только широкой панелью, разделенное на сектора.

    • От dreamix
      День добрый, господа!

      Пытаюсь реализовать довольно простую вещь с точки зрения функциональности интерфейса для мобильных устройств. А именно:
      В вертикально прокручиваемом блоке расположить блоки с горизонтальной прокруткой содержимого. Примерно как сейчас это выглядит в Гугл Плей.
      Но получается некоторая фигня, так как внутренние блоки (с горизонтальной прокруткой) перекрывают вертикальную прокрутку родителя.
      Причем когда начинаешь играться со свойствами скролбоксов, от результата немного мозг подтекает

      Пробовал различные варианты комбинаций свойств HitTest и igiPan (стоит по умолчанию) для внутренних скролов.
      Поведение несколько меняется (в том числе и где происходит касание внутри скролов - на объектах или на пустом месте), но необходимый эффект не достигается.

      Самый дельный вариант получается если передавать изменение Y-координат в событии OnGesture igiPan на объектах (!) внутри скроллов и переносить их на Viewport вертикального скролла. Но в таком случае не работает AniCalculations. При некоторых вариантах можно также  выставить HitTest - Fasle объектам внутри горизонтальных скроллов. Скроллы  начинают работать, но тогда теряется доступ к объектам. https://cloud.mail.ru/public/BYZ7/w957wUHEN
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу