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

mazayhin

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

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

  • Посещение

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

    19

Сообщения, опубликованные mazayhin

  1. 6 минут назад, Александр Лукьянов (Filament Extruder 1.75) сказал:

    Начал удалять компоненты и объекты с формы. ошибка уходит если с права удалить компонент панель у которой нет ни одного события, но есть ссылки на нее подобного рода.

    может быть какое то свойство исчезло или поменялось у компонента Panel

    
        Form1.Rectangle1.Parent := TControl(Sender).Parent;
        Form1.Rectangle1.Position.X := TControl(Sender).Position.X - 3;
        Form1.Rectangle1.Position.Y := TControl(Sender).Position.Y - 3;
        Form1.Rectangle1.Width := TControl(Sender).Width + 6;
        Form1.Rectangle1.Height := TControl(Sender).Height + 6;
      Form1.Rectangle1.BringToFront;
      Sender := Form1.Rectangle1.Parent;
      Form1.Rectangle1.Parent := nil;
      // убираем с контейнера
        Form1.Rectangle1.Parent :=
          TControl(Form1.Profiles.SettingStream.Items[num]).Parent;

     

     

     

     

    А есть где нибудь до этого TObjectList<TControl>.Create?

  2. Про окно тут писали, решение предложил Andrey Efimov

    А так должно все сработать, если таргет ниже 23 в манифесте указан, что будет значить, что приложение этого еще не умеет, было сделано для более ранних устройств

  3. JView это и есть вью, которое вы хотите показать. Делаете ее в xml и из ресурсов грузите.

    А так да, я понял что вы хотите. Только работать будет не у всех. Постараюсь если на выходных на работе появиться сделать демку, ну или уже в будни

  4. 17 часов назад, x11 сказал:

    img_is_med = 'drawable/med'; img_not_med = 'drawable/nomed';

    Первый ресурс (ismed) - будет 0, т.е. его нет, потому как в деплое он обозначен как ismed.png. Второй ресурс нашелся.

    На мой взгляд, лучше скопируйте себе System.Android.Notification, и внесите правки в него. Функция CreateNativeNotification (в Берлине 125 строка). Там можете и картинки назначать, и кнопку создать, и прогресс, и хронометр тот же вывести, в общем, процесс для творчества будет безграничен.

    Так же и к предыдущей теме вашей пригодится - тот же .startForeground для сервиса, ну или "несмахиваемое" уведомление (.setOngoing(True))

  5. 1 час назад, Akad сказал:

    Кстати если стоит задача определения IP локального компьютера-сервера, то это легко узнается через броткаст на .255 адрес. В ответе сервера должен содержаться его IP, и остальные действия обращения должны быть уже на этот IP. Лично я всегда так делаю. Много лет и разных инсталляций полёт нормальный. Если мы говорим про интернет, то проще всего DNS.

     

    Ну да, в одном широковещательном домене годное решение, дальше то не пройдет.

    Но опять же и в локалке больше нескольких компов с сервисами, наверное, лучше искать в dns. Да и роутер в ней точно будет, и прописать не составит проблем

  6. Ну так если посмотреть, то dns продают как услугу многие.

    Я предложил временный вариант для теста вашего приложения, если нет своего сервера, прописать в нашей тестовой зоне А-запись типа "x11-fmx.test.mmreg.net", которая глобально доступна. Если есть доступ в интернет в локальной сети, этот имя бы отрезолвилось в нужный IP, хоть повторюсь, в 192.168.0.1.

    Если работа только в локалке, на своем роутере, в разделе DNS пропишите этот адрес, и проблема будет решена.

    ---

    Попробуйте в командной строке выполнить nslookup fmsxforum.test.mmreg.net он отрезольвится в адрес моего рабочего компьютера, 192.168.4.8

  7. Собственно, об этом и писал.

    x11, пишите свой ip (можно в личку), если надо временно на нашем dns пропишем. Можно хоть серый хоть белый, если проброс пробос портов настроен. Потестируете, потом у себя поднимите

  8. На винде они о друг друге узнают по Netbios, и знают свои имена отуда. На линуксе вроде надо что то подкрутить, что бы заработало. Если есть wins сервер, то спрашивают у него. И если мы запросим компьютер по имени, которое не подходит для netbios, например, содержит ".", то система лезет в днс.

    Пропишите в днс имя и все. Если в локалке, то хотя бы на роутере

  9. Возможно, где-то отключается. Но гугл говорит:

    void startForeground (int id, 
                    Notification notification)

    If your service is started (running through startService(Intent)), then also make this service run in the foreground, supplying the ongoing notification to be shown to the user while in this state. 

    Ну и вызов как то предполагает создание уведомления

  10. Скорее всего, приложение на мобильном не знает этот host (не может найти в dns), а WINS на android вроде нет.

    Пропишите корректно в dns этот хост, или вручную разрешайте ip-адрес https://developer.android.com/reference/android/net/Network.html#getAllByName(java.lang.String)

  11. Часы это часы. Элемент системный, так же как и индикатор сети. 

    Поставил себе аваст. Он запускает службу KeepAliveService в foreground-режиме, она и устанавливает уведомлене. Точно так же в статус баре висит значок, а в шторке уведомление. 

    Хотите кастомизировать это уведомление, пишите свое активити на java, и в уведомлении его устанавливайте. Ну и от туда необходимое действие передавайте в интенте

    Screenshot_2018-02-19-22-35-14.png

    IMG-20180219-WA0001.jpg

  12. 1 час назад, x11 сказал:

    Не знаю, как правильно оно называется: system bar или notification bar? То, что вверху экрана, где часы и системные значки (иконки).

    В общем, в Delphi VCL есть TTrayIcon для Windows.

    А что можно реализовать в этом плане для Android? Как повесить свой значок, чтобы он был виден и в шторке, когда верхнюю панель тянешь вниз, чтобы и на tap была реакция.

    Спасибо.

    TNotificationCenter.

    Если хотите сделать его "несмахиваемым", то надо лезть в исходники и допилить Notification (ongoing)

  13. 21 час назад, x11 сказал:

    Хм... А причем тут Abdroid_id? Как вы по хэшу собрались скорость определить? К тому же он может быть null..

    Не знаю конечно, сам не определял, но вот гугл говорит это https://developer.android.com/reference/android/provider/Settings.Secure.html#ANDROID_ID

  14. 1 час назад, Ingalime сказал:

    Подскажите, пожалуйста, пример как правильно, для моего случая лучше всего перекрыть кнопку Назад?

    Событие формы OnKeyDown
     

    // uses FMX.Platform, FMX.VirtualKeyboard
    
    
    begin
      if Key = vkHardwareBack then
      begin
          Key := 0;
      end
    end;

    Как то так..

  15. Где физически на устройстве находится файл нам знать и не надо, а для работы со своей и общими папками никакой root не нужен.

    Опять же, не должно ничто само обновляться и перезаписываться из apk на устройстве!

    В функции CopyAssetToFile даже специально комментарий оставлен в месте, где идет проверка наличия файла на устройстве.

    х11, делайте обновление своей базы в коде, при запуске, а не перезаписывайте ее пустой (прямо представил, как при обновлении того же вайбера затирается вся переписка, прямо прелесть)

×
×
  • Создать...