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

Ingalime

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

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

  • Посещение

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

    5

Активность репутации

  1. Like
    Ingalime отреагировална krapotkin в Выравнивание элементов в ListView   
    http://fire-monkey.ru/topic/5519-фреймворк-для-стандартного-listview/?page=2#comment-37339
  2. Like
    Ingalime отреагировална Tumaso в TBluetoothLE, Android   
    @vovanse вынеси работу с TBluetoothLE  в отдельный поток, и тогда приложение подвисать не будет
  3. Like
    Ingalime отреагировална Kitty в FMX.PhoneDialer убивает приложение   
    Выяснилось, что если таргет iOS 64 bit, то FMX.PhoneDialer.hpp работает, проект стартует нормально.
  4. Like
    Ingalime отреагировална Andrey Efimov в Builder   
    Самостоятельно (не уверен, что сработает):
    Там вроде есть ещё логин, можно по нему ресетнуть.
    Запускаете студию, жмёте "Help->About", смотрите логин (вроде он) в "This product is licensed to:"
    Заходите https://members.embarcadero.com/, кнопка "Reset My Password" и далее...
     
    Или звонок, письмо в тех. поддержку.
  5. Like
    Ingalime отреагировална krapotkin в не отрабатывает TThread.synchronize   
    ну, есть идеи, как бы модифицировать код, но и так сойдет
    я бы перефразировал
    if frmScanWindow = nil then   frmScanWindow := TFrmScanWindow.Create(NIL); frmScanwindow.showModal( procedure (const AResult:TModalResult) begin if AResult = mrOK then begin ....... и может быть даже FreeAndNil(frmScanwindow); end; end);  
  6. Like
    Ingalime отреагировална Kast2k в не отрабатывает TThread.synchronize   
    Простите за беспокойство, разобрался.
    Надо было в главной форме вместо такого
     
    var f:TfrmScanWindow; begin f:=TfrmScanWindow.Create(nil); try f.Show; finally // FreeAndNil(f); end; Указать как
    begin frmScanWindow:=TfrmScanWindow.Create(nil); try frmScanWindow.Show; finally end; И форму выкинуть из auto-create
  7. Like
    Ingalime отреагировална gonzales в переход к x64?   
    Вот моя переписка. Прислали вот такое письмо с вопросами
    Hello Alexey, Thanks for contacting Google Play Developer Support. Apologies for the delayed response. I understand you would like an extension to become 64-bit compliant. In order to submit your request, can you please provide the following: Reason for not being able to be compliant in time (if there’s a dependency on third party tools, please specify it) Reason for your request and your plan for migration Specific plan on how you will become compliant, with an estimation date for building 64-bit support that you can commit (For example: The app will be compliant 2 weeks after Embarcadero is compliant.) I look forward to your reply and assisting you further. Regards, Liz Google Play Developer Support я ответил так
    Hello Liz! Thank you for your letter. In answer to your questions, i provide that as soon as Embarcadero will make a 64x-compiler for Android, i will use it and make a compatible application. I hope, that it won't take long, i dont use any third party tools, only Embarcadero RAD Studio. I'm disappointed, that Embarcadero do not release a new version in time, like they still don't announce it. Also to this I want to ask, if i need to update my application in Google Play Market, i need to reques this extension every time, or only onсe? My application is made for users of our smart home system, and I'm very worried, that our new customers can't download it from Play Market, so I hope for a positive decision of my request!  
  8. Like
    Ingalime отреагировална juppy в не прорисовывается часть интерфейса   
    Ребя, сам разобрался. Спасибо всем переживающим ?
    Перенес апдейт листбокса туда, где он должен быть.
    Теперь кусочек стал выглядеть вот так:
    TThread.Synchronize(nil, procedure () begin lbTare.BeginUpdate; UpdateTareBalanceItems; Label7.Text := 'Обновлено'; lclCloseAnimationT; lbTare.EndUpdate; end); Теперь работает вот так: https://www.youtube.com/watch?v=XABighMePBo
    Если есть замечания по коду - поделитесь...
  9. Like
    Ingalime отреагировална krapotkin в Использование TGridPanelLayout   
    насколько я понимаю, GridPanelLayout сам делает назначение ячейки при вставке очередного компонента
    просто добавляйте в том порядке, в котором нужно.
    Если нужно что-то пропустить, то можно вставлять пустой TLayout
  10. Like
    Ingalime отреагировална Yarpda в переход к x64?   
    А можно поделиться формой письма (естественно обезличенной) на которое согласились и на которое отказали? Я думаю это было бы полезно для понимания хода мыслей G. Да и для большинства участников форума думаю информация будет полезной.
  11. Like
    Ingalime отреагировална Андрей Рулин в пример отправки данных через USB   
    Вот например есть https://github.com/LongDirtyAnimAlf/Delphi-Android-USB-HID  . К сожалению библиотека старая , не использует возможности последний версий API . И, подозреваю, глючная. 
  12. Like
    Ingalime отреагировална Barbanel в Элементы стиля на Андроид   
    Возможно это не работает потому, что для Андроида у вас нет стиля, либо он называется не так, либо в данном стиле нет нет элемента с именем 'BackgroundColor'.
    Проверьте стили и убедитесь что структура имен совпадает.
  13. Like
    Ingalime отреагировална gonzales в переход к x64?   
    Одобрили приложение до 1-го августа 2020г. Надеюсь к тому времени и компилятор допилят))) 
  14. Like
    Ingalime отреагировална krapotkin в Уничтожить TLayout   
    You shouldn't do it this way
    Follow the simple rules.
    1. Create your components without Owner   ==>    Aaa := TAAA.Create(NIL);
    2. Keep the links to created objects.   Use them to destroy objects after.
    L:=TLayout.Create(NIL); L.parent := ContainerComponent; .... L.Parent := NIL; FreeAndNil(L); // now it works the same way in desktop and mobile !! 3. Don't call DisposeOf manually.
    ARC should do it for you automatically! If you didn't provide conditions for automatic destruction and killed the object yourself, it means that some links to your object are keeped somewhere inside and can be utilized at any moment, so you'll get an Access Violation...
     
    Good alternative to your scenario is using Frames! Construct the frame from several components and use it as single unit instead of creating Layout, then rectanlge inside it then ... then ...
  15. Like
    Ingalime отреагировална CyberStorm в Программирование под 64-bit Android невозможна   
    В соседней ветке писали про обновление 32 битных приложений, и что нужно обращаться в тех.поддержку гугла - типа пояснить ситуацию и тогда разрешат обновлять 32-битные приложения. Возможно эта договоренность Google - Embarcadero касается и вновь публикуемых приложений. Лично я буду пробовать общаться с ними через пару месяцев, если конечно обновление студии не прилетит раньше.
  16. Thanks
    Ingalime получил реакцию от ComAlex в Программирование под 64-bit Android невозможна   
    https://community.idera.com/developer-tools/b/blog/posts/august-2019-delphi-android-beta-plans-august-roadmap-update
  17. Like
    Ingalime получил реакцию от Barbanel в Unable to create process: Performing Streamed Install   
    Мне помогло ссоздание эмулятора с маленьким разрешением.
     
  18. Like
    Ingalime отреагировална krapotkin в StatusBar Color   
    Запустил код по ссылке на delphi 10.3.2, android 8.1 Xiaomi redmi 5 plus
    В моем случае выяснилось, что поведение зависит от состояния Mainform.Borderstyle
    Если none - ведет себя как Fullscreen, статусбар прячется
     
    Дополнено! 
    Чистый проект на 10.3.2 сам добавляет в Deployment файл styles-v21.xml
    Его нужно отключить! 

     
    иначе будет только вариант Fullscreen (он же Borderstyle=none) когда статусбар скрыт и выезжает полупрозрачный, либо обычный неокрашенный статаусбар.
    Если без него впоследствии что-то не взлетит, можно так же как с основным styles.xml добавить в deployment свой, модифицированный, со строками
            <item name="android:windowTranslucentStatus">true</item>
            <item name="android:windowTranslucentNavigation">false</item>
     
    У меня после отключения окрашивание статусбара работает корректно.
  19. Like
    Ingalime отреагировална Ronalds Rizakovs в Ping на Android или на iOS   
    У меня была похожая проблема - проверить доступен ли хост. 
    Как я понял TIdICMPClient работает лиш при наличии root. Даже под win надо "as administrator" запускать.
    Были варианты вызвать системную команду PING и анализировать результат, но сложно. 
    Проблему обошол  с помощью IdTCPClient.
    function CheckInternet: boolean;
    begin
    result:=false;
    try
    IdTCPClient1.ReadTimeout:=200;
    IdTCPClient1.ConnectTimeout:=200;
    IdTCPClient1.Port:=Port;
    IdTCPClient1.Host:=Server;
    IdTCPClient1.Connect;
    IdTCPClient1.Disconnect;
    result:=true;
    except
    result:=false;
    end;
    end;
    Если надо время отклика проверит - не подойдот. А для доступности по моему ок!  
     
  20. Like
    Ingalime получил реакцию от qz5 в Ping на Android или на iOS   
    Для платформы Андроид автор библиотеки Indy по имени Remy, приводит свои рассуждения тут:
    https://stackoverflow.com/questions/25096126/delphi-xe6-and-android-ping
     
  21. Like
    Ingalime отреагировална Mohamed BEN AMMAR в Воспроизведение видео на Android.   
    at this time you can use the ALCinoe Library it can provide you all you need
    take a look at my sample here.
    you should see this tuto here
  22. Like
    Ingalime отреагировална krapotkin в Фреймворк для стандартного ListView   
    Обновил репозиторий.
    Добавил метод AfterLayout для условного форматирования элементов после раскладки по итему LV
    https://bitbucket.org/vkrapotkin/vklistview/src/master/
  23. Like
    Ingalime отреагировална Barbanel в Установить две версии программы на один Android-планшет   
    Нужно в настройках проекта изменить имя пакета.
    В 10.3 это в Project -> Options -> Application -> Version Info -> Key: ProgramID
  24. Like
    Ingalime отреагировална Шамсуддин в Замена текста в Word и OpenDocument   
    Доброго времени суток!
    Сделал простенький компонент для замены текста в документах Word (docx) и OpenDocument (odt). Особенностью данного компонента является отсутствие необходимости какого-либо дополнительного ПО типа MS Office или OpenOffice и использует только встроенные библиотеки. В связи с чем он может работать на различных платформах (но ещё не проверял  ).
    DocumentProcessing.zip
    Как использовать:
    uses DocumentProcessing; ... procedure TForm2.Button1Click(Sender: TObject); var Document: TDocumentProcessor; begin Document:= TDocumentProcessor.Create(Self); Document.FilePath:= 'D:\test.docx'; Document.Open(TDocumentKind.dkDocx); Document.ReplaceText('Familiya', 'Cat'); Document.Save; Document.Open('D:\test.odt', TDocumentKind.dkOdt); Document.ReplaceText('Familiya', 'Cat', [rfReplaceAll]); Document.Save; end;  
    Немного о принципе работы:
    Проблемы:
     
  25. Like
    Ingalime отреагировална krapotkin в Автомасштабирование компонент   
    погуглить слово Align 
    поиграться с Margins и Paddings
    прочитать статью
    http://docwiki.embarcadero.com/RADStudio/Rio/en/FireMonkey_Layouts_Strategies
    http://docwiki.embarcadero.com/RADStudio/Rio/en/Tutorial:_Using_FireMonkey_Layouts
×
×
  • Создать...