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

Cody71727172

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

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

  • Посещение

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

  1. Like
    Cody71727172 получил реакцию от Rusland в ListBox, Edit и клавиатура   
    У Edit свойство KillFocusByReturn = true, ReturnKeyType=Done/Go/Next/Search/Send
  2. Like
    Cody71727172 отреагировална Sergionn в В DesignTime на форме появляются артефакты   
    Для топикастера: вариант "лечения" в панели управления Nvidia выставить для всей системы или конкретно для Delphi и программы режим.
    Предпочтительный графический процессор - или Автовыбор или Интегрированное графическое оборудование.
     
    Эта песня с непрорисовкой имеет место быть в ноутбуках с гибридными  видеосистемами Nvidia. Тянется с xe2, в qc писал с 2011 - 0 реакции. Режим direct2d, при переключении на gdi+ моргание уходит, но появляются другие "радости".
    Также в самой ide тоже работать нельзя. Это касается HD типа приложения, в 3D канва иногда просто непрорисовывается при размещение контролов на TLayer3d - также постил в qc - бестолку.
    И это только самые поверхностные (есть еще!) неисправленные баги на отдельно взятой системе, боюсь представить какие будут на других.
  3. Like
    Cody71727172 отреагировална 97mik в В DesignTime на форме появляются артефакты   
    При разработке приложения сталкиваюсь вот с такой штукой:
    То есть на форме происходят какие-то беспорядки.
    А при запуске приложения и наведении курсора на кнопку, вся форма почему-то становится чёрной.

  4. Like
    Cody71727172 отреагировална Равиль Зарипов (ZuBy) в [TMultiView] Правки стандартного примера MultiViewDemo   
    Доработал чуть CustomPresentation из демо
     
    1) убрал баг с утечкой памяти
    было так с включенным ReportMemoryLeaksOnShutdown := true;

     
    2) неточное отображение на форме, не по центру
    было

    стало

     
    3) при открытой MV закрыть программу, утечка памяти ReportMemoryLeaksOnShutdown := true;
     
    4) Добавил события OnShown, OnHidden
     
    MultiView.zip
  5. Like
    Cody71727172 получил реакцию от ivadimos в ListBox, Edit и клавиатура   
    У Edit свойство KillFocusByReturn = true, ReturnKeyType=Done/Go/Next/Search/Send
  6. Like
    Cody71727172 получил реакцию от Равиль Зарипов (ZuBy) в ScrollBox лагает   
    Попробуйте так, возможно, это то что вам нужно:
    http://fire-monkey.ru/topic/1495-tmultiview-kak-izbezhat-zaderzhki-pri-pervom-poiavlenii-tmultivie/?p=7293
  7. Like
    Cody71727172 отреагировална kami в ScrollBox лагает   
    Есть мнение, что для (например) списка контактов нужно использовать ListView, а не ScrollBox
  8. Like
    Cody71727172 получил реакцию от zairkz в ScrollBox лагает   
    Попробуйте так, возможно, это то что вам нужно:
    http://fire-monkey.ru/topic/1495-tmultiview-kak-izbezhat-zaderzhki-pri-pervom-poiavlenii-tmultivie/?p=7293
  9. Like
    Cody71727172 отреагировална Brovin Yaroslav в [TMultiView] Как избежать задержки при первом появлении TMultiView?   
    Так, я посмотрел. Сохраняем себе такую процедуру:
    procedure PreloadContent(const Control: TControl); var I: Integer; begin if Control is TStyledControl then TStyledControl(Control).ApplyStyleLookup; for I := 0 to Control.ControlsCount - 1 do PreloadContent(Control.Controls[I]); end; Она форсирует загрузку стилей. Задержка при появлении TMutliView заключается в том, что стиль загружается не сразу у любого контрола, а только по мере появления контрола. Обычно это происходит при первой отрисовки. Это правило касается всех контролов.
     
    Поэтому, в этом случае, вам нужно форсировать загрузку стилей. Это можно сделать при помощи моей процедуру PreloadContent.
    Добавьте в TForm.OnCreate и это решит задержку при первом появлении:
    PreloadContent(MultiView1);
  10. Like
    Cody71727172 получил реакцию от Равиль Зарипов (ZuBy) в ListBox, Edit и клавиатура   
    У Edit свойство KillFocusByReturn = true, ReturnKeyType=Done/Go/Next/Search/Send
  11. Like
    Cody71727172 отреагировална Равиль Зарипов (ZuBy) в ListBox, Edit и клавиатура   
    Пользуюсь еще вот таким модулем
     
    просто подключаем в uses и используем для Андроид
     
    vkbdhelper.zip
  12. Like
    Cody71727172 отреагировална Равиль Зарипов (ZuBy) в ListView Color Helper   
    Привет Всем!
    Много тем на форуме про раскраску TListView, нашел в интернете решение и доработал его
    Вот что получилось
       
    LV_Helper.zip                                                                  ColorListView.zip
    Доступно для Seattle
    ListView1.SetColorItemSelected(TAlphaColorRec.Orangered); //выделенный ListView1.SetColorItemFill(TAlphaColorRec.Gray); // обычный цвет Item ListView1.SetColorItemFillAlt(TAlphaColorRec.Lightgrey); // альтернативный цвет Item ListView1.SetColorBackground(TAlphaColorRec.Black); // цвет самого TListView ListView1.SetColorItemSeparator(TAlphaColorRec.Lightgray); // Линия разделения Item'ов ListView1.SetColorText(TAlphaColorRec.Red); // Обычный текст ListView1.SetColorTextSelected(TAlphaColorRec.White); // выделенный текст ListView1.SetColorTextDetail(TAlphaColorRec.Yellow); // текст доп. инфы ListView1.SetColorTextHeader(TAlphaColorRec.Green); // текст заголовка ListView1.SetColorTextHeaderShadow(TAlphaColorRec.Lightgray); // тень текста   ListView1.SetColorButtonText(TAlphaColorRec.Orange); // цвет текста кнопки   ListView1.SetColorButtonTextPressed(TAlphaColorRec.Orangered); // цвет нажатой кнопки добавлено в Berlin
    ListView1.SetColorPullRefresh(TAlphaColorRec.Orange); ListView1.SetColorPullRefreshIndicator(TAlphaColorRec.Orangered); ListView1.SetColorStretchGlow(TAlphaColorRec.Lime); ModernListView.rar
  13. Like
    Cody71727172 отреагировална zairkz в Как узнать GPS координаты устройства при отсутствии GPS датчика?   
    Решено Zuby и Cody71727172   , может кому пригодиться:
     
    Вообщем кнопочка MyLocation на MapView цепляет данные c LOCATION_SERVICE (Androidapi.JNI.Location) 
    и если отсутствует GPS датчик в телефоне, тогда:
     
    Прописываем функцию:
    function CheckGPSActive: Boolean; // uses Androidapi.JNIBridge, Androidapi.JNI.Location,  Androidapi.JNI.JavaTypes, Androidapi.JNI.GraphicsContentViewText, Androidapi.Helpers {$IFDEF ANDROID} var   LocManagerObj: JObject;   LocationManager: JLocationManager;   allProviders: JList;   I: Integer; begin   Result := false;   LocManagerObj := SharedActivityContext.getSystemService (TJContext.JavaClass.LOCATION_SERVICE); // запрашиваем сервис Location   if Assigned(LocManagerObj) then   begin     LocationManager := TJLocationManager.Wrap((LocManagerObj as ILocalObject).GetObjectID);     // получаем LocationManager     if Assigned(LocationManager) then     begin       allProviders := LocationManager.getProviders(true);  // запрашиваем список всех провайдеров       if Assigned(allProviders) then         with TStringList.Create do         begin           for I := 0 to allProviders.size - 1 do Add(JStringToString(allProviders.get(I).ToString));           if ((IndexOf('gps') >= 0) or (IndexOf('network') >= 0) or (IndexOf('passive') >= 0)) then                      Result := true;           Free;         end;     end;  end; {$ELSE} begin   Result := false; {$ENDIF} end; и при запуске LocationSensor например на Form.Create проверяем
    procedure TForm_main.FormCreate(Sender: TObject); begin {$IFDEF ANDROID}  LocationSensor.Active:=true;  if not LocationSensor.Active then         if not CheckGPSActive then           ShowMessage('Включите GPS для определения Вашего местоположения!')         else           LocationSensor.Active := true; {$ENDIF} end; LocationSensor сам подключит источник данных, поэтому изменять в LSensor1LocationChanged ничего не нужно, например:
    procedure TForm_Main.LSensor1LocationChanged(Sender: TObject; const [Ref] OldLocation, NewLocation: TLocationCoord2D); //uses Maps.Engine var   MapsEngine: TMapsEngine;  MapsLoc: TMapCoordinate;  MapsData: TMapsEngineGeoData; begin   MapsLoc := TMapCoordinate.Create(NewLocation.Latitude, NewLocation.Longitude);   MapsEngine.SetOptionsYandex('');   MapsEngine.Geocoding(NewLocation, MapsData);   Edit1.text:= MapsData.FormattedAddress; end;  
  14. Like
    Cody71727172 отреагировална zairkz в Как узнать GPS координаты устройства при отсутствии GPS датчика?   
    Всем здоровья, вообщем ситуация следующая имеется телефон без GPS датчика, но нужны координаты. 
     
    Подскажите как можно их вытащить
    Например при отображении MapView на ней кнопочка MyLocation которая даже без датчика достаточно точно показывает местоположения. 
     
    Вообщем как вытащить эти координаты UserLocation не отображая карту (может в системных данных где то)?
    Или как программно нажать MyLocation, чтобы после центрирования карты получить координаты MapView.Position?
     
    Реверс Геокодинг по вайфай или мобильным данным (ip-адрес) совсем не то. 
  15. Like
    Cody71727172 отреагировална zairkz в Не получается подключиться к MySQL   
    Для подключения к базе на удаленном хостинге, необходимо:
    1. Выделенный IP адрес, (хостинг на выделенном сервере или VDS)
    2. На сервере настроить в брэндмауре пакеты MySQL на порт 3306 (по умолчанию)
    3. Возможно на маршрутизаторе хостинга закрыты порты, обычно нужно написать чтобы открыли порт.
    4. Настроить сам MySQL, добавить учетную запись на соединение из вне или дать доступ root (не желательно).
    5. Зайдите на сервер лучше по RDP (удаленный рабочий стол), и можете через программу dbForge (бесплатная) добавить учетную запись, указав подключение хоть от куда (то есть %)
    6. Далее попробуйте подключиться для начала со своего компьютера через dbForge
    7. FireDac не использую, там херь какую то надо настраивать с драйверам)), но ZuBy позже скинет исходник коннекта к MySQL через FireDac. 
    8. Использую платный MyDac от Devart, если вам лень и вы НЕ СМОЖЕТЕ с FireDac работать (как я), тогда могу скинуть свой MyDac. писать в ЛС.
  16. Like
    Cody71727172 отреагировална bigjorj в Не учитывается размер шторки   
    Вот кстати и подоспело решение проблемы со статусбаром под Intel аппаратами
     
    https://magnumlabs.wordpress.com/2015/10/10/delphiandroid-misalignment-status-bar-on-intel-based-devices/
  17. Like
    Cody71727172 отреагировална Равиль Зарипов (ZuBy) в Перехват СМС сообщения от определенного адресата   
    так сделано в одной из моих программ, автоматическое считывание кода подтверждения оплаты, подредактируй только его и не забудь про разрешения
     
     
  18. Like
    Cody71727172 получил реакцию от zairkz в Работа сервиса при закрытом приложении   
    Большое спасибо!
    Буду разбираться
    --------------------------------------------
    Все работает)
    Правда сервис в манифесте всё равно должен быть прописан, чтобы принимать сообщения с закрытым приложением
  19. Like
    Cody71727172 отреагировална Brovin Yaroslav в [TMultiView] Как избежать задержки при первом появлении TMultiView?   
    Задержка пропадает, если использовать этот код в TForm.OnShow?
    var Buffer: TBitmap; begin // Draw to Bitmap force to load all styles, measure size, build font-glyphs etc Buffer := TBitmap.Create(1, 1); try Buffer.Canvas.BeginScene; try MultiView.PaintTo(Buffer.Canvas, Control.LocalRect); finally Buffer.Canvas.EndScene; end; finally Buffer.DisposeOf; end;
  20. Like
    Cody71727172 получил реакцию от Alex Bozhko в Работа сервиса при закрытом приложении   
    Большое спасибо!
    Буду разбираться
    --------------------------------------------
    Все работает)
    Правда сервис в манифесте всё равно должен быть прописан, чтобы принимать сообщения с закрытым приложением
  21. Like
    Cody71727172 отреагировална xenon54 в Работа сервиса при закрытом приложении   
    Ну тут все просто. Remote Push Notification.
    Вот, хороший видос на эту тему для ведра тынц
    И сервис никакой не нужен.
    Для ведра это называется  "Google Cloud Messaging"
  22. Like
    Cody71727172 получил реакцию от zairkz в Работа сервиса при закрытом приложении   
    Здравствуйте!
    Есть такой вопрос: необходимо выводить нотификатор каждый раз как в базе данных в таблице появляются новые записи, а главное делать это даже если приложение закрыто.
    Удалось добиться этого при свернутом приложении (Нашёл в сети и использовал пример сервиса в xe7 от Brian Long), но такой вариант не устраивает (процесс убивается через время)
    Предлагали использовать AlarmManager, но информации по этому поводу не нашёл
    Заранее спасибо
×
×
  • Создать...