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

Лидеры

  1. kami

    kami

    Пользователи


    • Баллы

      4

    • Постов

      643


  2. Brovin Yaroslav

    Brovin Yaroslav

    Администраторы


    • Баллы

      2

    • Постов

      2 124


  3. Andrey Efimov

    Andrey Efimov

    Модераторы


    • Баллы

      1

    • Постов

      842


  4. mixi

    mixi

    Пользователи


    • Баллы

      1

    • Постов

      9


Популярный контент

Показан контент с высокой репутацией 22.07.2015 во всех областях

  1. Добрый день! В теме про наш продукт http://fire-monkey.ru/topic/1519-1c-papyc-mobilnoe-prilozhenie-dlia-masterov-priemschiko/ меня просили поделиться исходным кодом компонента TabControl с поддержкой слайда табов пальцем. С удовольствием делюсь В составе архива сам компонент и пример его использования. FMXUI.zip
    1 балл
  2. Добрый день, При добавлении маркера, методы возвращаюют вам инстанс маркера. /// <summary>Add marker specified by Descriptor and return new TMapMarker object</summary> function AddMarker(const Descriptor: TMapMarkerDescriptor): TMapMarker; /// <summary>Add circle specified by Descriptor and return new TMapCircle object</summary> function AddCircle(const Descriptor: TMapCircleDescriptor): TMapCircle; /// <summary>Add polygon specified by Descriptor and return new TMapPolygon object</summary> function AddPolygon(const Descriptor: TMapPolygonDescriptor): TMapPolygon; /// <summary>Add polyline specified by Descriptor and return new TMapPolyline object</summary> function AddPolyline(const Descriptor: TMapPolylineDescriptor): TMapPolyline; Сохраните его. И когда нужно будет его удалить, выполните: Marker.Remove; Marker.Free; Или Marker.DisposeOf;
    1 балл
  3. Это зависит не от индейцев и не от FireMonkey, а является общей проблемой сетевого обмена Ваш сервер спрятан за NAT, т.е. нет прямого соответствия между внешним IP и локальным. Поэтому клиент и не может достучаться до него "извне". Возможные варианты решения: сделать серверу белый IP (есть такая услуга у провайдеров, в т.ч. и мобильных) Сделать промежуточный сервер, который будет сидеть на белом IP, а исходный сервер и клиент будут подключаться к этому, таким образом они оба будут клиентами. Если доступен роутер, через который сервер "смотрит" в интернет - можно пробросить на этом роутере порт извне напрямую на локальный ip сервера. Да, в качестве примеров работы "за NAT" вы можете привести Skype, TeamViewer, Ammyy и т.п. Но они все используют метод 2. Еще есть вариант (кажется, не помню точно, давно этим не занимался) - DynDNS.
    1 балл
  4. mixi

    Нашел реализацию Hint в windows и macOS

    Пример действительно работающий, но... 1) Если привязать его например, к кнопке и сделать enable:=false, то hint не появится (не работет OnMuseEnter). Нативные hint-ы под Mac и Win появляются всегда. 2) Всегда проходит какое время между наведением и нажатием на кнопку. Если вы "передержали" и hint появился, то после нажатия на кнопку и выполнении како-го либо дествия он скроется после установленной выдержки времени. У меня например, при нажатии на кнопку должен скрыться элемент (rectangle ) на которам эта кнопка установлена. Элемент скрывается, а hint еще какое-то время висит над пустым местом. Вообще ситуция с hint мне не понятна - свойства есть, но все под protection и экземплярам не доступны. Я понимаю, что для мобильных платформ оно не встребовано, но ведь firemonkey не только для мобильных или тенденции изменились. В данном примере показан обход этой проблемы (protection) путем создания наследника-обертки TControl.
    1 балл
  5. В озвученном вами примере ScrollableForm в том числе получается высота виртуальной клавиатуры в методе FormVirtualKeyboardShown
    1 балл
  6. kami

    A component named ComponentName already exists.

    Более того, она и меня ввела в заблуждение Я посмотрел (когда начинал работать с FMX) код Free, увидел, что при ARC он будет пустой и успокоился на этом. А комментарии всякие читать... не барское это дело Вот и попался...
    1 балл
  7. kami

    A component named ComponentName already exists.

    xenon54, согласен. Но сам объект от этого никуда не денется - как минимум, его будет держать Parent. Кстати, только сейчас обратил внимание на "compiler translates.....". Весьма удивился, если честно. Я почему-то был уверен, что всё от TObject и выше (дженерики не в счет) реализовано именно кодом в .pas файлах procedure TObject.Free; begin // under ARC, this method isn't actually called since the compiler translates // the call to be a mere nil assignment to the instance variable, which then calls _InstClear {$IFNDEF AUTOREFCOUNT} if Self <> nil then Destroy; {$ENDIF} end;
    1 балл
  8. Я, другого способа не знаю, может уже и есть, но мне на глаза не попадался, поэтому написал способ, который точно должен сработать. Про компонент: Ресейвер можно прописывать через манифест, а можно регистрировать во время работы приложения. Отличия в том: что через манифест ресейвер статичен, т.е. он всегда будет существовать и принимать сообщения, даже когда приложение закрыто а регистрация во время работы приложения, позволяет создать временный ресейвер, который будет работать, только если приложение уже запущено По поводу ошибки, точно не подскажу, возможно, это из-за того, что в манифесте указан не существующий java-класс. p.s. В XE7-XE8 задача склеивания с файлом classes.dex значительно упрощена. Полезные статьи: Как добавить jar библиотеку в проект (XE7-XE8) Как подключить и использовать свой JAVA-класс (общая инфа) Как создавать обёртки для JAVA-кода (ручной способ, ещё до появления утилиты)
    1 балл
  9. Этот компонент я делаю для клиента форума. Чтобы отображать простую разметку постов с форума. Я не планирую, что он будет поддерживать все. По моим планам, это базовые элементы разметки: Параграф (межстрочный интервал, отступы) Списки Картинки Изменение параметров текста (шрифт, размер, цвет, стиль) Блок кода Ссылка Дальше посмотрим.
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...