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

Равиль Зарипов (ZuBy)

Модераторы
  • Постов

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

  • Посещение

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

    264

Весь контент Равиль Зарипов (ZuBy)

  1. Win, OSX Это где? OnSaveState срабатывает перед уничтожением формы, а вот OnDeactivate, вроде как, худо-бедно можно использовать для моих целей. http://fire-monkey.ru/topic/1055-opisanie-tfgapplicationevents-monitoring-osnovnykh-sobytii-pril/
  2. для каких платформ? если для Win то вроде у Ярослава в компонентах есть AplicationEvents, а для других платформ попробуй OnSaveState. он обрабатывается когда приложение должно сохранить свои данные т.к. может быть выгружено менеджером памяти автоматически. срабатывает на кнопке последние приложения (в android)
  3. IntToStr(ActionID) - всегда правильное значение? может дело в этом?
  4. а почему бы не использовать TLayout? он фокус на себя не берет SecondaryForm.zip
  5. в итоге получилось так ContentView - TListView procedure TForm1.ContentViewItemClickEx(const Sender: TObject; ItemIndex: Integer; const LocalClickPos: TPointF; const ItemObject: TListItemObject); var pMy: TPoint; pItem: TRect; begin // вычисляем прямоугольник, где распологается кнопка pItem.Left := trunc(ContentView.Width - ContentView.ItemAppearanceObjects.ItemObjects.Accessory.WidthWhenVisible - ContentView.ItemAppearanceObjects.ItemObjects.TextButton.WidthWhenVisible) - 12; pItem.Right := pItem.Left + trunc(ContentView.ItemAppearanceObjects.ItemObjects.TextButton.WidthWhenVisible); pItem.Top := trunc((ContentView.ItemAppearance.ItemHeight / 2) - (ContentView.ItemAppearanceObjects.ItemObjects.TextButton.HeightWhenVisible / 2)); pItem.Bottom := pItem.Top + trunc(ContentView.ItemAppearanceObjects.ItemObjects.TextButton.HeightWhenVisible); { смотрим куда тыкаем ShowMessage('click : ' + LocalClickPos.X.ToString + ' ' + LocalClickPos.Y.ToString + #13#10 + 'client: ' + ContentView.Width.ToString + #13#10 + pItem.Left.ToString + ' ' + pItem.Top.ToString + #13#10 + pItem.Right.ToString + ' ' + pItem.Bottom.ToString + #13#10); } pMy.X := trunc(LocalClickPos.X); pMy.Y := trunc(LocalClickPos.Y); if PtInRect(pItem, pMy) then begin ShowMessage('Нажалось))'); end else begin // нажатие на Item, выполняем код тут, не в OnItemClick end; end; стиль вот такой используется
  6. я же наоборот использую ListView, для достижении своих целей
  7. удали из манифеста сам, такого не встречал
  8. Здравствуйте! Вопрос в следующем: Почему при клике на TextButton вызывается OnItemClick? Как запретить вызов OnItemClick?
  9. В программе есть поток, но он пишет в буферный лист. А в синхронизации выводит в мемо
  10. в мемо напрямую вообще ничего не пишется, пишется в буферный TStringList а он по определенным событиям только обновляет Мемо
  11. Здравствуйте! Хотелось бы узнать подробней об этом баге программа была запущена в течении нескольких часов, и вот выдало такой баг как лечить? или какое максимальное кол-во символов оно может содержать? в Мемо был лог, который писался в течении всего этого времени, но на скрине его нет. бывает еще такое проявление когда Мемо не рендерит текст и даже фон, просто принимает фон формы, остается толька каретка
  12. расширенная форма -> прикрепить файлы
  13. 1. ввёл Павловская 2. начал стирать, образовалась подсказка 3. ввёл Палисадная (несколько букв), выбрал 4. начал стирать, осталось подсказка Павловская Сделай чтобы при выборе Item'a менялась подсказка и кликнуть нужно два раза
  14. begin fSSL := TIdSSLIOHandlerSocketOpenSSL.Create(fHTTP); fHTTP.IOHandler := fSSL; fHTTP.AllowCookies := True; fHTTP.HandleRedirects := True; end; Указать НУЖНЫЙ тип SSL/TLS и его версию и если это Windows программа, то надеюсь вы не забыли библиотеки ssl положить вместе с исполнительным файлом ответ на запрос, проверьте id вашего приложения
  15. Косяк скорей всего в неправильно выбранной высоте контролов, попробуйте задать высоту на андроиде правильную в зависимости от размера шрифта
  16. этот у параметр у формы есть, посмотри в свойствах формы
  17. на счет приближения и отдаления я не в курсе, а остальное можно решить кинув на TScrollBox эти картинки а в картинки Label с включенным HitTest'ом при нажатии на который будет выводиться ShowMessage или какой-нить другой способ показать информацию хоть через TCalloutPanel
  18. уверен что для этого нужна служба, а т.к. из коробки нет службы и её реализация через костыли (которые есть в интернете) не внушает доверия. т.к. на моём девайсе так и не получилось запустить. а те у кого получилось, быстро поняли что это туфта и приложение весом в сотни мегабайт в ОЗУ не способно жить долго, её менеджер памяти быстро выгрузит. хотя дерзайте
  19. вот и причина не хранить в TList )))) храним их в TObjectList<TMapCoordinate> тогда все удалится нормально ))) нужно попробовать, хотя и так все работает корректно
  20. код будет таким marker:=Map1.AddMarker(markerDescription); ... if Assigned(marker) then marker.remove; а если хранить точки в TList<TMapCoordinate> то просто очистить List не приведет к удалению маркеров с карты нужно использовать for marker in List do marker.remove; List.clear; а на счет вываливания приложения с ошибкой, то перед выходом скорей всего нужно прописать Удаление Сервиса есть такой код в FMX.Maps.Android var MapService: TAndroidMapService; procedure RegisterMapService; begin MapService := TAndroidMapService.Create; TPlatformServices.Current.AddPlatformService(IFMXMapService, MapService); end; выполняется он в FMX.Maps initialization RegisterMapService; но я нигде не нашел UnRegisterMapService (ну или что-то подобное) во-общем суть такова: написать самому UnRegisterMapService (для всех платформ) и тогда можно будет избавиться от ошибок с другими формами и динамическим созданием
  21. а у вас в приложении точно не стоит FullScreen? т.к. я сам имею на борту последнюю релизную версию 5.1.1, такого поведения не встречал
  22. с разными версиями XE такое не проверял. Удалите все файлы кроме .fmx, .pas, .dpr и снова откройте .dpr
  23. вперед и с песней в Android Studio, там такое есть
×
×
  • Создать...