Alex7wrt

Пользователи
  • Публикаций

    421
  • Зарегистрирован

  • Посещение

  • Победитель дней

    14

Alex7wrt стал победителем дня 6 марта

Alex7wrt имел наиболее популярный контент!

Информация о Alex7wrt

  • Звание
    Продвинутый пользователь

Информация

  • Пол
    Мужчина

Посетители профиля

913 просмотра профиля
  1. Да, такой подход допустим, его рассматривал среди прочего. Но хочется узнать, есть ли более "прямолинейный подход" в FMX.
  2. Ваш пример с фреймом немного из другой оперы, поскольку TObjectList нельзя указать в качестве Owner. Это список, а не комонент, иначе все было бы гораздо проще. А для управления жизненным циклом обьектов как раз и установлен в True параметр AOwnsObjects.
  3. Вряд ли. Списков может быть очень много. Нужно у каждого спрашивать, есть ли в нем нужный объект? Есть ли способ у самого объекта получить ссылку на тот ObjectList, к которому он принадлежит?
  4. Добрый день Столкнулся с такой задачей: Существует несколько TObjectList<TRectangle>. При создании каждого из них AOwnsObjects задано как True. RectList[i]:=TObjectList<TRectangle>.Create(True); ............ Nrect:=TRectangle.Create(nil); Nrect.Parent:=Form1; RectList[i].Add(Nrect); Существует ли способ определить, к какому из TObjectList принадлежит элемент?
  5. Выше правильно написали о глюках в Tokyo под Android. Также учтите, что событие таймера, также как и анимации, обрабатываются в главном потоке. При этом вы задали достаточно маленький интервал для таймера. Поэтому, лучше перенести действия над визуальными компонентами за пределы таймера (если они там есть), а сам таймер сделать на основе потоков.
  6. В событии OnResize формы проверять width > height и для каждого из двух вариантов переприсваивать позиции и размеры тех контролов, которые должны меняться.
  7. Насчёт 10.2.2 не знаю, наверно так, раз у вас это наблюдается, но у меня вообще в этой версии под Андроид вылазят артефакты, иногда мерцают части отрисовки примерно как у вас в Пятнашках. В результате вернулся на 10.1.2. А в ней с ProcessMessages ничего такого не замечал, да и вы тоже пишите, что использовали раньше. Прочитал ваш пост. Приблизительно понял, что вы имеете в виду. Но лично у меня ProcessMessages никогда не приводил к сбоям. Возможно потому, что использовал ее всегда в простых ситуациях вроде тех, о которых писал в посте выше.
  8. Ну, даже Ярослав считает это плохим стилем. )) Тогда объясните плз, почему это плохой стиль. Я так понимаю, плохой стиль называется плохим, если он может привести к непредвиденному сбою. Но если инструмент не приводит к сбою и решает поставленную задачу, то, как мне кажется, он не обязательно является плохим стилем.
  9. Зависит от контекста. Можно найти много полезных применений. Помню, первый раз пользовался еще на Delphi 7 (там немного по-другому называлась), когда рисовал график по точкам и нужно было, чтобы график появился не сразу, а как бы анимацией. Или например, когда нужно подсветить выбранный Item (пункт меню), перед тем как скрыть само меню, если после этого сразу выполняются какие-то действия.
  10. Там же написано следующее: Прежде чем проводить тестирование, убедитесь, что ваше приложение готово к публикации в Google Play.Пользователи могут принять участие в тестировании, выбрав соответствующий параметр на странице приложения. Однако предварительная версия доступна для всех и появляется в результатах поиска в Google Play. Поэтому она должна быть максимально готова к публикации. https://developer.android.com/distribute/best-practices/launch/beta-tests.html?hl=ru То есть даже при бета тестировании приложение все равно доступно для всех?
  11. Всем здравствуйте! Можно ли в Google Play опубликовать приложение не для всех, а только для небольшой группы людей? Приложение должно легко обновляться и поддерживать PUSH уведомления. Поэтому удобно использовать Google Play. Но при этом оно не должно быть доступным для каждого,. Есть ли такая возможность в Google Play?
  12. Бекенд для чатов (PHP+MySQL)

    Зависит от механизма реализации. Как вы реализовываете механизм проверки, отправили ли пользователю сообщение? Если путем частых запросов на сервер от каждого клиента, то могут быть проблемы, если таких пользователей будет много. Но у меня, например, есть приложение (не чат) на PHP+MySQL, где происходит обращение к серверу с последующей обработкой данных из базы и получением ответа в среднем с частотой 50 раз в секунду. Полет нормальный.
  13. Не в курсе насчет версии 10.2.3, но по roadmap следующей версией должна быть 10.3 и в ней планируют Z-order Вот фотка с дорожной карты. https://community.embarcadero.com/uploads/376/2017roadmap/RADRoadmapSept2017_5.png https://community.embarcadero.com/uploads/376/2017roadmap/RADRoadmapSept2017_8.png А вот поддержки 64-битных приложений для Android на ней нет...
  14. В вашем случае несколько TButton, у каждого из них меняются две координаты, и все это зависит от одного параметра. Поэтому нет особого смысла в TAnimation, здесь проще воспользоваться Таймером. Сделал простой пример, во вложении. Buttons.zip
  15. Задать для тех TButton, которые должны вращаться по окружности значение Position.Point:=PointF(Xc+R*cos(A+D[i]), Yc+R*sin(A+D[i])), где Xc, Yc - координаты центра, вокруг которого движется TButton, R - расстояние от этого центра до центральной точки TButton, A - параметр (угол), который линейно меняется (если нужна постоянная скорость) с помощью таймера либо TAnimation. Если элементов TButton несколько, то сдвигом A+D задается угловое смещение TButton относительно друг друга. Например, если всего N штук TButton, то Di=2*Pi/N*i. Xc, Yc и R легко выражается через координаты и размеры центра и TButton. P.S. Задача аналогична круговому вращению планет вокруг Солнца