Перейти к содержанию
Fire Monkey от А до Я

Поиск сообщества

Показаны результаты для тегов 'Scroll'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Общие вопросы
    • Анимация
    • Графика
    • Стили
    • Базы данных и REST
    • Компоненты
    • Положение, размеры, выравнивание
    • Работа с текстом
    • Приложение и формы
    • Отладка
    • Развертывание приложений
    • Вопросы по языку Object Pascal и RTL
    • Общая информация о TControl
    • События
    • Прочие вопросы
  • Вопросы по платформам
    • Android
    • iOS
    • OSX
    • Windows
    • Windows Phone
    • Linux
  • Вопросы по использованию RAD Studio
    • Лицензирование
    • Сборка проектов
    • Multi-Device Designer
    • Редактор кода
    • Вопросы
  • Обучение
    • Основная информация
    • Вопросы
    • Отзывы
  • Поиск специалистов по FireMonkey
    • Консультации
    • Ищу подрядчика
  • Дополнительные ресурсы по FireMonkey
    • Сторонние компоненты
    • Приложения, написанные с использованием FireMonkey
    • Примеры
    • Руководства
    • Шаблоны
    • Статьи и заметки
    • Информация о версиях RAD Studio
    • Новости
  • Организация работы данного форума

Поиск результатов в...

Поиск контента, содержащего...


Дата создания

  • Начало

    Конец


Дата обновления

  • Начало

    Конец


Фильтр по количеству...

Регистрация

  • Начало

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


StackOverflow


Защита от ботов


Город


Интересы

Найдено: 8 результатов

  1. slav_z

    FMX: Скроллинг и нажатия

    Все разработчики при работе с FMX рано или поздно сталкиваются с одной и той же проблемой: необходимо исключить "случайное" срабатывание нажатий элементов внутри скроллбокса во время его скроллинга. Идут годы, а решения так и нет. Давайте попробуем это исправить. Поехали! Запускаем IDE, создаем новый проект, кидаем на форму TVertScrollBox и на него чего-нибудь побольше... запускаем на мобильном устройстве, пытаемся скроллировать, получаем проблемы в виде срабатывания разных событий типа OnClick элементов. Решение состоит в том, чтобы сделать элементы "невидимыми" для событий связанных с действиями пользователя с экраном во время скроллинга. Делаем следующее: Все. Переносим код в базовую форму, делаем его более гибким, убираем все те костыли, которые мы уже успели сделать ранее... Удачи! https://github.com/slav-libx/scroll-click.git
  2. Как изменить сам Header, скролы ? Я открывал стайл блок, но всё что смог изменить там это цвет полей и всё.
  3. Привет друзья! Возникла странная ситуация при работе с TListBox. А именно - при попытке прокрутки списка в его конец. Условно: - есть список итемов (сообщения чата); - загрузка сообщений происходит в процедуре "синхронизированной" с главным потоком и заключена в TListBox(listbox1).BeginUpdate и TListBox(listbox1).EndUpdate; - все замечательно грузится НО! После загрузки Итемов требуется прокрутить список в его конец. И вот тут начинаются "приколы". Как только не пытаться прокрутить список в его конец (разные способы, см.ниже) - всегда получается, что список прокручивается до конца, но немного "откатывается" вверх. Размер его автоматического скролла "обратно" зависит от количества Item в TListBox! Чем больше кол-во Item - тем больше назад откатывается скролл. Способы прокрутки в конец списка - значения не имеют. Всегда одно и то же. procedure TChatListBoxEx.ScrollToLast; var Item: TListBoxItem; begin // ВАРИАНТ 1 Item := ListItems[Items.Count - 1]; if Assigned(Item) then ScrollToItem(Item); // ВАРИАНТ 2 ViewportPosition:= TPointF.Create(0, Item.ParentedRect.Top); // ВАРИАНТ 3 ScrollBy(0, ViewportPosition.Y - Item.ParentedRect.Top); // ВАРИАНТ 4 BeginUpdate; try ItemIndex := Items.Count - 1; finally EndUpdate; end; end; Предупреждая ваши вопросы, сразу скажу - пробовал и другие варианты, просто перечислять не стал все. Пробовал и эмитировать нажатие клавиши END при "активном" списке. Все синхронизируется, типа TThread.Synchronize(nil, listbox1.ScrollToLast); Эффект всегда один и тот же... НО! Если загрузить список, независимо от кол-ва элементов списка, а потом в программе вызвать ScrollToLast, подождав некоторое время, а не сразу, например по нажатию на какую-нибудь кнопку, то список прокрутится в конец НОРМАЛЬНО! Будьте добры - кто сталкивался с подобной ситуацией, или кто что-то может посоветовать? Или наши Гуру смогут ответить на этот вопрос? Видео, чтобы было понятнее что происходит, прилагаю. RAD Studio 10.1 Berlin (эффект наблюдается на всех версиях Windows - XP, Vista, 7, 8, 10. На других ОС пока не пробовал...) Заранее благодарен! P.S. Возник вопрос (как вариант решения проблемы) - как узнать, что произошло событие окончания отрисовки TListBox? А именно - список заполнился, выполнилась отрисовка и можно прокручивать.
  4. Добрый вечер, друзья! Кто в курсе, подскажите - возможен ли плавный скроллинг содержимого TListView при работе приложения под Windows? Если с мобильным вариантом все ОК, на "автомате" - т.е. плавный скроллинг там работает по умолчанию, то с работой под Windows что-то не понятно как это включить/реализовать. Например, чтобы сделать плавный скролл содержимого TListBox, достаточно написать TScrollBox(__listbox1___).AniCalculations.Animation := True; А есть ли что-то аналогичное для TListView? Заранее благодарен за ответы!
  5. Добрый день. Мне нужно добиться такого же эффекта как и в браузере, чтобы при зажатой кнопке CTRL + кручение скролла элементы на форме изменяли размеры это возможно?
  6. Давно не хватало TListView в горизонтальной ориентации, например чтобы сделать вот такую картинку zairkz сделал стиль с применением 9-patch png "технологии" С помощью жестов показано как сделать "сквозной скрол" как писал dreamix P.S. по компоненту TListViewHorz, не успел все протестить как следует со всеми параметрами не правильно будет отображаться Header'ы и Поиск, основной функционал сохранен UPDATE: LVStyledhorz.7z
  7. umkes

    Запрет жеста

    Добрый день. Суть проблемы: Есть компонент ListBox, при долгом нажатии обрабатывается igiLongTap через Gesture. При медленном скролле листбокса, опять таки вызывается лонг тап. Вопрос, можно ли как-то запретить вызов лонг тапа при скролле листбокса?
  8. XXXXXX

    Проблема авто-скрола в TMemo

    Доброго времени суток. У меня возникли проблемы с TMemo, пытаюсь сделать что-то наподобие поля ввода в чате. При переходе на новую строку и при авто-переносе текста (wordwrap), поле должно автоматически регулировать высоту, но до определённого размера. Для этого на событие "ChangeTracking" добавил контроль : procedure TfMain.MemoSendTextChangeTracking(Sender: TObject); const Offset = 20; begin MemoSendText.ScrollTo(MemoSendText.Caret.Pos.X, MemoSendText.Caret.Pos.Y, True); if LayoutSendBox.Height < 100 then LayoutSendBox.Height := MemoSendText.ContentBounds.Height + Offset; end; "LayoutSendBox" - представляет собой контейнер, в котором находится само поле, у которого в параметре Align указанно "Client", то-есть при изменении высоты контейнера соответственно меняется высота самого поля. Функция Wordwrap у поля - включена, как и ShowScrollBars, т.е. если поле растягивается больше допустимого размера, появляется скрол бар и при дальнейшем вводе текста поле скролится вниз, при помощи процедуры "ScrollTo" Проблема состоит в следующем: После того как поле TMemo достигает своего максимального размера и начинает опускаться вниз при продолжении ввода текста, скрол бар начинает прыгать после введения каждого символа, т.е. после ввода первого символа поднимается наверх на пару пикселей, так, что нижней части последней строчки становится не видно (хотя если проскролить поле вниз, нижняя часть отображается), а при вводе следующего символа всё становится на место. Может кто-нибудь подсказать в чём проблема?
×
×
  • Создать...