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

Kitty

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

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

  • Посещение

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

    16

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

  1. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Как заполнить эллипс?   
    var MyRect: TRectF; begin MyRect := RectF(10, 10, 30, 30); if Canvas.BeginScene then try Canvas.Fill.Color := TAlphaColorRec.Red; Canvas.Stroke.Color := TAlphaColorRec.Black; Canvas.FillEllipse(MyRect, 1); Canvas.DrawEllipse(MyRect, 1); finally Canvas.EndScene; end; end; FillEllipse - заливка
    DrawEllipse - обводка
  2. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Как заполнить эллипс?   
    для заливки используется 
    Canvas.Fill.Color := цвет; Canvas.FillEllipse();  
  3. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Меняющееся изображение на кнопке   
    ошибаетесь
    1) скейлы есть и в Windows и в Mac
    2) Линукс не скоро станет поддерживать GUI
  4. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Рисование маршрута на MapView, Delphi, Android   
    Посмотрите эту тему
    Последний вариант по ссылке
  5. Like
    Kitty отреагировална Евгений Корепов в Одинаковые логотипы и картинки   
    Получите от медицинского центра разрешение на использование их логотипа. Можно на русском языке. Текст произвольный - поручаем Kitty изготовление приложения и разрешаем использование логотипов, торговых марок, фирменных наименований и т.д. в приложениях. 
    Подробнее здесь https://play.google.com/intl/ru/about/ip-deception-spam/impersonation-ip/ 
    И отправьте скан (pdf к примеру) этого письма в гугл, подробности тут https://support.google.com/googleplay/android-developer/answer/6320428
     
    Последнее время все сложнее публиковать приложения, правила уже балансируют на грани маразма. Одно моё приложение заблокировали по причине того что я "выдавал" себя за магазин линолиума в какой то немецкой деревушке - логотип приложения был немного искаженной зеркальной копией логотипа этого магазина, так же отличались цвета - у магазина желтый, у приложения оранжевый. Вот такие дела... 
    Так же сильно зависит от места модерации - если повезет попасть в британский офис, то вам досконально объяснят причину блокировки, приведут примеры правильного и не правильного решения вашего вопроса. Вот пример из моей практики:
    Если не повезет попасть в подмосковье - то вы не получите комментариев, апелляция будет проигнорирована и относится к вам будут как к ничтожеству. Российская специфика - мальчик получивший работу в Великом Гугле, благодаря двоюродному дяде, сам становится Великим. И естественно он обязан быть гавном, так у него в должностной инструкции написано ;-)
  6. Like
    Kitty отреагировална krapotkin в Простой пример работы с MS Word в Delphi FMX   
    есть Open/Libre Office и библиотеки для работы с ним
     
  7. Like
    Kitty отреагировална Pax Beach в Простой пример работы с MS Word в Delphi FMX   
    Сделал пример приложения для работы с Microsoft Word из приложения Delphi.
    Такое приложение может использоваться для обмена данными между объектами семейства Microsoft Office.
     
    Исходные коды приложения помогут вам понять, как работать с объектной моделью Microsoft Word.
    Чтобы лучше разобраться с нюансами Word, предлагаю ознакомиться со справочником Word VBA reference на MSDN.
    Проект создан в среде FireMonkey Delphi Berlin 10.1
    Протестирован в MS Word 2010, 2016, Windows 7x64 и 10x64.
    Чтобы посмотреть пример, просто распакуйте zip-файл проекта и щелкайте по порядку кнопки на форме.

     
    Скачать Delphi Word Test
     
    WordTest.zip
  8. Like
    Kitty отреагировална dante333 в [Статья] Настройка пуш уведомлении через сервис Firebase для ANDROID и IOS [Часть 2]   
    При отправке пуша из консоли kinvey,API Calls (обращение к API сервиса) не защитывается,что правильно,ведь запроса от пользователя мы не получаем.То есть,теоретически,вы имеете "безлимитку" на пуши. Все таки Kinvey это не совсем "про пуши",сервис имеет гораздо больше функций и применений,а пуши это можно сказать бонус.Если пользоваться чисто пушами,то единственный запрос от пользователя будет приходить при первом запуске приложения,для получения пары ID/токен.Так что вариант с Kinvey,особенно при небольшом количестве пользователей,имеет право на существование).Но и тут не все так гладко.Kitty в соседней теме описала про дублирование уведомлений.
  9. Like
    Kitty отреагировална afors в FileExits не находит файл хотя он есть   
    procedure TForm1.Button1Click(Sender: TObject); Var   s: String; begin   s := '×123.txt';   If FileExists (s) Then ShowMessage(s + ' yes') Else ShowMessage (s+ ' No'); end; Вот так FileExists находит файл с символом × в имени. Но этот файл был создан обычным проводником Windows. Total Commander отказался создавать такой файл, заменив × на вопросительный знак.
    Файл создается программой?
  10. Like
    Kitty отреагировална Alex Bozhko в Одинаковые логотипы и картинки   
    Публиковали три редакции одного приложения. Одинаковым было всё, кроме описания. Проблем не было вообще.
  11. Like
    Kitty отреагировална Andrey Efimov в Одинаковые логотипы и картинки   
    Раньше точно можно было, если указаны отличия в названии приложений и владельцем приложений является один аккаунт, которым в свою очередь управляет представитель компании (в данном случае медицинского центра) или уполномоченный компанией человек.
    Тут больше вопрос в авторском праве, если приложение не ваше, а вы скопировали чужой логотип и т.п. то можно нарваться на блокировку за нарушение авторских прав.
  12. Like
    Kitty отреагировална Brovin Yaroslav в Embarcadero Weekly Round-up for Developers - #8/2017   
    Embarcadero Weekly Round-up 8                 Products | Free Tools | Events           WEEKLY ROUND-UP FOR DEVELOPERS   We continue to improve RAD Studio, Delphi, and C++Builder with one central goal in mind: helping you build cross-platform Native Apps faster than ever before and delivering them to the largest audience possible with ease.                 InterBase 2017 – Now Available   InterBase 2017 delivers the fastest version of InterBase yet with new language features, server wide performance monitoring and enhanced transaction handling.   Read More!   Download InterBase 2017 Now   The trial and developer editions of InterBase 2017 are available for free   Download the Trial Version   Download Free Developer Edition               Build IoT enabled apps with RAD Studio   ThingConnect IoT device components range from healthcare devices such as heartrate montiors, blood pressure monitors and scales to home automation gadgets like BLE light bulbs, Z-Wave enabled door locks, smart switches, smoke detectors and more.
        Read More!     Webinar: External BeaconFence Mapping Editor   Embarcadero’s BeaconFence technology utilizes its Beacon Fencing Map Editor from the RAD Studio IDE, but is not able to run outside of it. Woll2Woll has created an external mapping editor to create XML mapping files Written 100% with the FireMonkey library - Runs on Windows, iOS, Android, and OSX.   Register Now! 16 March 2017             Delphi for Linux Boot Camp Replay   Just in case you missed the fantastic Delphi for Linux Boot Camp by Craig Chapman last week, or you want to watch it again, here is the replay that includes Marco Cantu's Q&A at the end.   Read More!   Delphi for Linux RTL units   This blog post from Marco Cantu focuses solely on the RTL units that are going to be available in Delphi for the Linux platform.
        Read More!             Key Traits of the Coming Delphi For Linux Compiler   In case you missed it: Here are some of the key technical elements of Embarcadero’s new Delphi compiler for the Linux platform.
     
        Read More!   How to make a RESTful WebBroker app in C++Builder   WebBroker (included in Professional edition and up) makes it easy to build a RESTful server. This article shows you how to server data from a database via a REST API with WebBroker and C++Builder.   Register Now       Просмотр полной статьи
  13. Like
    Kitty отреагировална ENERGY в Одинаковые логотипы и картинки   
    Поменяйте цвет этих иконок. В любой редакторе можно сдвинуть HUE (я обычно использую Axialis Icon Workshop и Photoimpact) - смещение цветов. 
    И вам будет удобно, и не должны отказать.
    Можно также поискать Online Image\photo editor - но они как правило очень бедные по функционалу, и там может не быть изменения HUE.
  14. Like
    Kitty отреагировална Дмитрий Ш. в Пуш и андроид 6   
    по пушам на MIUI лучше почитать на 4pda.ru/ все описано и с картинками )
  15. Like
    Kitty отреагировална ENERGY в [Статья]Как создать простой Android Broadcast Receiver. How to implement simplest Android Broadcast Receiver in Delphi   
    Мой вариант Broadcast Receiver, на мой взгляд наиболее оптимизирован и удачен. По сравнению с известным кодом от barisatalay .
    Отличия -
    исправлена утечка,
    чуть быстрее работает, за счет того что создается один фильтр в него добавляется несколько Actions  и одна регистрация на него, 
    нет лишних конвертирований с Jstring to string и обратно,
    адаптирован под Delphi 10 (JFMXBroadcastReceiver) ,
    упрощена работа с классом (не нужно помнить о регистрации и вызывать ее заранее) ,
    и самое главное - может получать getResultCode текущего ресивера (к примеру он нужен при получении статуса смс сообщения и в других случаях.). 
    unit BroadcastReceiver; interface {$IFDEF ANDROID} uses   Androidapi.JNI.Embarcadero, Androidapi.JNI.GraphicsContentViewText, Androidapi.helpers,   Androidapi.JNIBridge, FMX.Helpers.Android, Androidapi.JNI.JavaTypes,   System.Classes, System.SysUtils; type   TBroadcastReceiver = class;   TListener = class(TJavaLocal, JFMXBroadcastReceiverListener)   private     fOwner: TBroadcastReceiver;     fReceiver: JFMXBroadcastReceiver;   public     constructor Create(aOwner: TBroadcastReceiver);     destructor Destroy; override;     procedure onReceive(context: JContext; intent: JIntent); cdecl;   end;   TOnReceive = procedure (aContext: JContext; aIntent: JIntent; aResultCode: integer) of object;   TBroadcastReceiver = class   private     fListener : TListener;     fRegistered: boolean;     fOnReceive: TOnReceive;   public     constructor Create(aOnReceiveProc: TOnReceive);     destructor Destroy; override;     procedure AddActions(const Args: array of JString);     procedure SendBroadcast(const aValue: string);   end; {$ENDIF} implementation {$IFDEF ANDROID} { TBroadcastReceiver } constructor TBroadcastReceiver.Create(aOnReceiveProc: TOnReceive); begin   inherited Create;   fListener := TListener.Create(Self);   fOnReceive := aOnReceiveProc; end; destructor TBroadcastReceiver.Destroy; begin   fListener.Free;   inherited; end; procedure TBroadcastReceiver.AddActions(const Args: array of JString); var   vFilter: JIntentFilter;   i: Integer; begin   if fRegistered then     TAndroidHelper.context.getApplicationContext.UnregisterReceiver(fListener.fReceiver);   vFilter := TJIntentFilter.JavaClass.init;   for i := 0 to High(Args) do     vFilter.addAction(Args[i]);   TAndroidHelper.context.getApplicationContext.registerReceiver(fListener.fReceiver, vFilter);   fRegistered := true; end; procedure TBroadcastReceiver.SendBroadcast(const aValue: string); var   Inx: JIntent; begin   Inx := TJIntent.Create;   Inx.setAction(StringToJString(aValue));   TAndroidHelper.Context.sendBroadcast(Inx); end; constructor TListener.Create(aOwner: TBroadcastReceiver); begin   inherited Create;   fOwner := aOwner;   fReceiver := TJFMXBroadcastReceiver.JavaClass.init(Self); end; destructor TListener.Destroy; begin   TAndroidHelper.context.getApplicationContext.unregisterReceiver(fReceiver);   inherited; end; // usually android call it from "UI thread" - it's not main Delphi thread procedure TListener.onReceive(context: JContext; intent: JIntent); begin   if Assigned(fOwner.fOnReceive) then     fOwner.fOnReceive(Context, Intent, fReceiver.getResultCode); end; {$ENDIF} end.  
    Как использовать
     
      // указывать нужно сразу все нужные вам Actions в Add через запятую, не по одной. fBroadcast := TBroadcastReceiver.Create(OnReceiveBroadcast);   fBroadcast.AddActions([StringToJString(SENT_ACTION)]); << Custom action ------------- // или например сразу несколько Actions fBroadcast.AddActions([TJIntent.JavaClass.ACTION_SCREEN_OFF, TJIntent.JavaClass.ACTION_SCREEN_ON]);  
  16. Like
    Kitty отреагировална ENERGY в В Delphi XE10 перестал работать FMXBroadcastReceiver (Android). Что изменилось со времён XE7?   
    Обратите внимание на мой Broadсast Receiver, как мне кажется более удачный, адаптированный под Delphi XE 10+
     
     
  17. Like
    Kitty отреагировална dante333 в Как убрать лишние уведомления в шторке при пуше?   
    Kitty,а вы попробуйте переустановить свое приложение.Удалить и заново поставить.Получите +1 к пушам. Было 3,станет 4.Больше переустановок,больше пушей. Когда работал с Kinvey была такая же история.В блогах на Embarcadero обсуждали даже.Если в кратце и по памяти,то при переустановке приложения,в Kinvey дублируется запись устройства на которое отправляется push.Что бы избежать этого,надо делать доп проверку на уже существующий токен для данного устройства.Повторюсь что это по памяти,но суть понятна.Можете поискать в блогах Sarina Dupont на Embarcadero.
    Собственно после этого я и перешел на нативные пуши. Потому как написал многоуважаемый ZuBy:
    Вот,нашел:
    https://community.embarcadero.com/blogs/entry/remote-push-notifications-on-android-with-rad-studio-xe6-795
    Второй коммент.
    15 раз установил,15 пушей.
  18. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Пуш и андроид 6   
    У меня андроид 6, опять же проблем нету. манифест правильно настроен?
  19. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Форма загрузки   
    дополню
    нужно в OnKeyUp главной формы (не первой) обработать vkHardwareBack и сделать Application.Terminate; чтобы при кнопке Назад, не вернуться на форму загрузки (первую форму)
  20. Like
    Kitty отреагировална Rusland в Создать БД с помощью SQLite   
    Для работы с Sqlite можете использовать компоненты FireDAC http://docwiki.embarcadero.com/CodeExamples/Berlin/en/FireDAC.SQLite_Sample
  21. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Как убрать лишние уведомления в шторке при пуше?   
    Если приложение выгружено, то пуши в шторку доставляет гуглосервис.
  22. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Как убрать лишние уведомления в шторке при пуше?   
    сколько пришло пушей от сервера столько и публикуется в шторку, отсебятину он не добавляет
  23. Like
    Kitty отреагировална krapotkin в Recevive push notifications   
    конечно, в момент старта приложения происходит подписка на получение пушей. но думаю не 4-5 секунд
  24. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Как включить/выключить звук у MediaPlayer?   
    а у TImage стоит HitTest := true;?
  25. Like
    Kitty отреагировална Равиль Зарипов (ZuBy) в Загрузка аудиофайлов в MediaPlayer   
    Remote Path неправильно заполнен, должно быть assets\internal
×
×
  • Создать...