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

brunnengi

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

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

  • Посещение

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

    21

Весь контент brunnengi

  1. Нет, не идет. ClosePath замыкает последнюю точку с начальной, формирую замкнутую фигуру.
  2. unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Objects; type TForm1 = class(TForm) Path1: TPath; procedure FormCreate(Sender: TObject); procedure Path1MouseEnter(Sender: TObject); procedure Path1MouseLeave(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.fmx} procedure TForm1.FormCreate(Sender: TObject); begin path1.Data.Clear; path1.Data.MoveTo(TPointF.Create(0, 0)); path1.Data.LineTo(TPointF.Create(50, 0)); path1.Data.LineTo(TPointF.Create(50, 50)); end; procedure TForm1.Path1MouseEnter(Sender: TObject); begin Path1.Stroke.Thickness := 5; end; procedure TForm1.Path1MouseLeave(Sender: TObject); begin Path1.Stroke.Thickness := 1; end; end. Полный код.
  3. path1.Data.Clear; path1.Data.MoveTo(TPointF.Create(0, 0)); path1.Data.LineTo(TPointF.Create(50, 0)); path1.Data.LineTo(TPointF.Create(50, 50));
  4. brunnengi

    [TPath] Как закрыть путь?

    Здравствуйте. Кинул TPath. Размер 100 на 100. Рисую путь (черный цвет на рисунке). Повесил на TPath события: OnMouseEnter и OnMouseLeave; События срабатывают как при наведении на черную линию, так и на красную область (подкрасил чтобы было понятно). Как создать такую ломанную что бы события мыши не срабатывали при входе в красную зону, а только при наведении на черную линии? Ну за исключением самого очевидного варианта - замкнуть линию обратным ходом. Может есть какое-то правильное решение?
  5. Здравствуйте. Есть у кого идеи как реализовать что то типа TCircle, TRectangle или TLine тока для отрисовки кривой безье?
  6. Будем отталкиваться от мысли что обычные браузеры из под винды тоже через Tap не пашут. У вас стоит инфомат. Если у вас там просто текст и кликане по элементам не требуется, а просто листают вниз текст, то можно сохранить как картинку или pdf и положить в vertdscroll. А уже потом обрабатывать самому tap и свайпы. Но в целом, вообще, эта работа, больше по части фронтовика, т.е. фронтенд разраба. Ему ничто не мешает сделать ветку сайта с JS кодом который запрещает выделение текста на странице, а сролл делать либо по клику какой нить круглой кнопки внизу по центру странице или обработать зажатие ЛКМ, свайп вверх или вниз и отпускание. Однако на моей практике при работе с терминалами и инфоматами, лучше писать именно ПО, а не грузить в браузер свою страницу. А если уж горит через веб браузер, то надо саму страницу адоптировать всё таки, так как даже всё сделать как вы хотите, то тыкать портянки текста вниз и читать никто не будет. Максимум пару экранов в сторону отлистают и всё и интереса больше нет. Но повторюсь что ПО, exe файл куда лучше пашет. Получаете с сервера разметку текста, картинки спокойно отображаете у себя. В FMX это вообще задачка три-семь дней, если речь именно о инфомате.
  7. ну не знаю про тонны кода. Не вижу где тут будет много кода. Сортировка это дело для StringList или Dictionary и т.д. смотря чем пользуетесь. А когда список есть или он поменялся, то просто отображаем его в чем хотим. Т.е. сначала подготавливаем данные, а потом уже отображаем. Просто по мне как раз таки layout и элементы в них дают большую свободу, как в стиле так и в функциях. Но тут уже всё на ваше усмотрение.
  8. не видя кода сказать тяжело. Но в целом можно просто кинуть layout, в него VertScroll box, а в него уже создавать все нужные вами Items в real-time. На моей практике это работает под виндой очень быстро.
  9. Здравствуйте. Если кинуть на форму TWebBrower, а саму форму сделать прозрачной, то TWebBrowser не отображается. Как это пофиксить?
  10. Рад что помогло. Да, в 10.4 там всё норм. Потому и написал что фикс тока для 10.3.3
  11. Согласен. Версия 10.3.3 очень стабильная. А вот эта 10.4 и 10.4.1 ещё темная лошадка.
  12. Я 10.4 поставил на VM, в надежде порешать вопрос с запуском на Andoid 10, но у меня в проекте используются платные компоненты срок обновления которых как раз закончился. А те что были скачены уже на ставятся на 10.4.1 Поэтому такой фикс мне прям помог. К тому же ждать официальный фикс от Embacadero смысла нет, его не будет. Так что придется ручками повозиться. Да вы далеко продвинулись, практически поняли куда копать, у меня увы такие копании ни к чему не привели.
  13. Здравствуйте. Некоторые пользователи Delphi 10.3 столкнулись с тем что даже при указании SDK 29 в манифесте проекта, при запуске скомпилированного приложения на платформе Android 10 происходило его падение. В августе 30 числа 2020 года было дано решение как пофиксить эту проблему. Переход на версию Delphi 10.4 не для всех является приемлемым решением, по разным причинам, к примеру у кого то платные компоненты и нет возможности обновиться до актуальных версий. Ниже представлен перевод статьи. В конце будет ссылка на оригинал. Приведенное здесь решение нацелено на обновление функции 'dlopen' в файле 'ICU.inc' (он включен в файл 'System.pas'). Вот шаги, необходимые для решения указанной проблемы: Откройте проводник и перейдите в папку по следующему пути: C:\Program Files (x86)\Embarcadero\Studio\20.0\source Скопируйте файлы из архива "missing_source_files.zip", который приложен в посту, в папку source из пункта "1" (комментарий от переводчика: в "missing_source_files.zip" лежит папка "rtl" в которой две папки - "posix", "sys". Лично я сделал сначала backup папки rtl из папки source, что и вам советую. Затем скопировал rtl папку из "missing_source_files.zip" и вставил в папку source) Переходим по пути: C:\Program Files (x86)\Embarcadero\Studio\20.0\source\rtl\sys Открываем файл "ICU.inc" в текстовом редакторе (пожалуйста, сделайте backup файла 'ICU.inc' для пущей безопасности). (комментарий от переводчика: орудовать в этой папке без прав админа не вариант. Поэтому я советую сначала скопировать файл "ICU.inc" куда нибудь в другое место, к примеру в папку Documents и там уже открыть его в том же Блокноте и сделав необходимые изменения сохранить файл и затем уже переместить его в C:\Program Files (x86)\Embarcadero\Studio\20.0\source\rtl\sys с заменой) В текстовом редакторе надо изменить функцию InitICU: Было вот так: А сделать надо что было вот так: Сохраняем сделанные изменения в файле "ICU.inc" Возвращаемся в проводник и переходим в папку %USERPROFILE% Скопируйте файл "build.bat" из архива "build_script.zip" , который приложен в этому посту в папку из пункта 7. Запустите от имени Администратора файл "build.bat". (Он создаст папку %USERPROFILE%\build в которой будет несколько папок с файлами. Из них нам нужны будут только System.o, но об этом ниже) Возвращаемся в проводник и переходим в папку C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\android\debug Скопируйте файл "System.o" из папки %USERPROFILE%\build\android\debug в папку из шага 10 (не забывайте сделать backup всех файл что вы заменяете, на всякий случай). Теперь переходим в проводник в папку C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\android\release Скопируйте файл "System.o" из папки %USERPROFILE%\build\android\release в папку из шага 12 (не забывайте сделать backup всех файл что вы заменяете, на всякий случай). Переходим в проводник в папку C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\android64\debug Скопируйте файл "System.o" из папки %USERPROFILE%\build\android64\debug в папку из шага 14 (не забывайте сделать backup всех файл что вы заменяете, на всякий случай). Переходим в проводник в папку C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\android64\release Скопируйте файл "System.o" из папки %USERPROFILE%\build\android64\release в папку из шага 16 (не забывайте сделать backup всех файл что вы заменяете, на всякий случай). На этом всё. Автор данного перевода лично прошел по всем шагам и сделал всё как было сказано, а также протестил на приложении что уже было в PlayMarket'е но не запускалось под Android 10. Я его обновил и запустил как на Android ниже 10, так и на Android 10. ЕСЛИ ВЫ НЕ ДОВЕРЯЕТЕ ПЕРЕВОДУ И/ИЛИ ВЫЛОЖЕННЫМ ФАЙЛАМ, ТО НИЖЕ ДАНА ССЫЛКА НА ОРИГИНАЛ СТАТЬИ // файлы выложенные здесь, взяты с форума где оригинал статьи. Ссылка на оригинал https://quality.embarcadero.com/browse/RSP-27218 Если нет логина, то под споллером скрины экрана с форума ссылки выше: Отдельное спасибо пользователю Stanislau Ihnatovich за сообщение в Telegram о том что есть решение build_script.zipmissing_source_files.zip
  14. Прошу прощение. Забыл что на fgx требуется рега. Сейчас скину сюда ниже
  15. Аа, простите, я что-то забыл, что там рега. Окей, сейчас в ту тему что выше скину. 2 минуты
  16. Да, оно. Это приложение собиралось на Delphi 10.3.3 после фикса. Фикс должен был решить проблему именно с крашем на Android 10. Я предположил что и на Android 11 тоже попрет. Ниже ссылка на пост, там дается ссылку на форум fgx где есть руководство как сделать fix среды Delphi 10.3.3
  17. Я сделал фикс на Delphi 10.3.3 для Android 10. Вот ссылка на приложение из PlatMarket. Прошу установить и отписаться пашет ли оно. Оно не требует прав и там только кнопка и поле ввода. https://play.google.com/store/apps/details?id=ru.fgx.test11_10_3_3_with_fix_android10
  18. Есть фикс для этой проблемы. Можете почитать на другом форуме https://forum.fgx-native.com/topic/530-delphi-1033-fix-для-sdk-29-android-10/ Решение рабочее, лично проверял.
  19. Подскажите пожалуйста, если нет связи или запрос шел слишком долго, то как получить информацию об этом? Сейчас при отключенном интернете, вллбще ни каких сообщений не выходит и код в секции "TThread.Synchronize" не отрабатывает?
  20. brunnengi

    NetHTTPClient Compression?

    Здравствуйте. Как скачивать с сжатый трафик через GZip по средством NetHTTPClient я знаю. А как отправить данные на сервер в жатом GZip ввиде с помощью NetHTTPClient?
  21. Заказ исполнен, спасибо большое. Тему можно закрывать.
×
×
  • Создать...