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

sinuke

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

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

  • Посещение

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

    35

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

  1. Like
    sinuke получил реакцию от Евгений Корепов в Учебное приложение "Слесарное дело"   
    Вышло обновление до версии 1.5.0:
     - Исправлены переходы в глоссарии
     - Значительно уменьшен размер приложения
     - Настройки автоматической проверки обновлений
     - [Windows] Переработка приложения для Windows
     - [Windows] Добавлены анимации перехода
     - [Windows] Минимальные размеры окна ограничены 800 пикселями по ширине и 600 по высоте
     - [Android] Системная строка подкрашивается в "фирменный" синий во всех режимах работы приложения
     - [Android] Отключена анимация перетаскивания элементов бокового меню
     - [Android] Индикатор загрузки
     - [Android] Навигационная панель больше не перекрывает интерфейс приложения
     - [Android] Исправлена ошибка с сохранением PDF-документа
     - [Android] Увеличена скорость вывода информации и тестирования
     - [Android] Немного изменен внешний вид экрана вывода результата тестирования

    Ссылка на скачивание Android-версии: https://yadi.sk/d/edIZR2VuuRFce
    Ссылка на скачивание Windows-версии: https://yadi.sk/d/iIeC0OE8ukMoi
  2. Like
    sinuke получил реакцию от Rusland в Учебное приложение "Слесарное дело"   
    Вышло обновление до версии 1.5.0:
     - Исправлены переходы в глоссарии
     - Значительно уменьшен размер приложения
     - Настройки автоматической проверки обновлений
     - [Windows] Переработка приложения для Windows
     - [Windows] Добавлены анимации перехода
     - [Windows] Минимальные размеры окна ограничены 800 пикселями по ширине и 600 по высоте
     - [Android] Системная строка подкрашивается в "фирменный" синий во всех режимах работы приложения
     - [Android] Отключена анимация перетаскивания элементов бокового меню
     - [Android] Индикатор загрузки
     - [Android] Навигационная панель больше не перекрывает интерфейс приложения
     - [Android] Исправлена ошибка с сохранением PDF-документа
     - [Android] Увеличена скорость вывода информации и тестирования
     - [Android] Немного изменен внешний вид экрана вывода результата тестирования

    Ссылка на скачивание Android-версии: https://yadi.sk/d/edIZR2VuuRFce
    Ссылка на скачивание Windows-версии: https://yadi.sk/d/iIeC0OE8ukMoi
  3. Like
    sinuke отреагировална Andrey Efimov в [Статья][Android] Как получить информацию о потреблении ОЗУ?   
    Ссылка: http://delphifmandroid.blogspot.ru/2017/03/blog-post.html
    Автор: Ефимов Андрей
    Описание:
  4. Like
    sinuke получил реакцию от Vitaldj в У TLabel пропали обработчики OnMouseMove, OnMouseDown и т.д.   
    может этому прямоугольнику нужно изменить свойство HitTest на False?
  5. Like
    sinuke отреагировална Евгений Корепов в Окончательная точка в вопросе расчета высоты TListViewItem (TListItemText)   
    При расчете высоты TListItemText приходилось использовать костыль - указывать размер шрифта отличный от 12 (например 12.01 и т.д.), если эти пренебречь, то расчет высоты не работал и текст или резался или высота итема оказывалась гораздо больше текста. Проблема в том, что на стадиях расчета высоты, к TListItemText еще не применен стиль, и параметры шрифта не соответствуют тому как будет выглядеть окончательный вариант на экране.
    Для правильного расчета высоты нужно выдернуть шрифт из стиля, делается это вот так:
    Var AFontObject : TFontObject; AListItemText : TListItemText; ... AListItemText:=TListItemText(AItem.View.FindDrawable(AName)); if AListItemText=Nil then AListItemText:=TListItemText.Create(AItem); AFontObject:=(AListView.FindStyleResource('font') as TFontObject); if Assigned(AFontObject) then AListItemText.Font.Assign(AFontObject.Font); //Теперь вычисление высоты имеет смысл и не нужно задавать размер шрифта - он берется из стиля. AListItemText.Height:=CalculateHeight(AListItemText, AListView, FTextLayout); Или можно затолкать это действие в функцию вычисления высоты:
    function CalculateHeight(const AListItemText : TListItemText; const AListView : TListView; const FTextLayout : TTextLayout) : Single; Var AFontObject : TFontObject; begin FTextLayout.BeginUpdate; try FTextLayout.Text:=AListItemText.Text; FTextLayout.MaxSize:=TPointF.Create(AListItemText.Width, TTextLayout.MaxLayoutSize.Y); AFontObject:=(AListView.FindStyleResource('font') as TFontObject); if Assigned(AFontObject) then FTextLayout.Font.Assign(AFontObject.Font) else FTextLayout.Font.Assign(AListItemText.Font); FTextLayout.WordWrap:=AListItemText.WordWrap; FTextLayout.Trimming:=AListItemText.Trimming; FTextLayout.HorizontalAlign:=AListItemText.TextAlign; FTextLayout.VerticalAlign:=AListItemText.TextVertAlign; finally FTextLayout.EndUpdate; end; // Result:=FTextLayout.Height * 1.4; // Теперь этот костыль не нужен Result:=FTextLayout.Height; end; Внимание! Если вы заполняете еще невидимый на экране ListView, не забудьте выполнить ListView.ApplyStyleLookup перед добавлением Items, иначе не получите правильный размер шрифта из стиля.
  6. Like
    sinuke отреагировална Равиль Зарипов (ZuBy) в [Статья] Настройка пуш уведомлении через сервис Firebase для ANDROID и IOS [Часть 2]   
    Ссылка: http://blog.rzaripov.kz/2017/02/firebase-android-ios-2.html
    Автор: Зарипов Равиль @ZuBy
    Описание: Настройка пуш уведомлении через сервис Firebase для ANDROID и IOS [Часть 2]
    В предыдущей  части , я рассказывал как сделать настройку пуш уведомления в консоли Firebase, в этой я покажу код на Delphi и серверную часть на PHP
    https://github.com/rzaripov1990/PUSHTestFCM
  7. Like
    sinuke отреагировална Равиль Зарипов (ZuBy) в [Статья] Настройка пуш уведомлении через сервис Firebase для ANDROID и IOS [Часть 1]   
    Ссылка: http://blog.rzaripov.kz/2017/02/firebase-android-ios.html
    Автор: Зарипов Равиль @ZuBy
    Описание: Настройка пуш уведомлении через сервис Firebase для ANDROID и IOS
  8. Like
    sinuke отреагировална Kitty в krapotkin и Равиль Зарипов   
    Даже не знаю или в правильный раздел форума пишу. Я, например, хочу поблагодарить в своей теме - krapotkin и Равиль Зарипов за очень полезные ответы. Реально помогают решить вопросы. Спасибо.
    Хотя все они паскалисты, все же удается иногда получить код на С++ со стороны. Очень в этом помогает автор Indy rlebeau, например эту статью: Статья 
    он переводит в С++ тут: C++  и никто бы другой не помог. В этом плане тяжело, без него и никак вопрос не решить.
    А этот форум это симбиоз ума и решений! Спасибо Ярославу за реализацию и хоты бы одного спеца по С++ как по Дельфи и - вот оно счастье.
    Спасибо!
     
     
  9. Like
    sinuke получил реакцию от Kitty в Drag в мобильных приложениях   
    необходимо использовать жесты. обрабатывать их нужно в событии OnGesture
    для определения того, что происходит в данный момент, есть EventInfo, с помощью которого можно узнать начался жест, окончился или нужно действовать по инерции (это свойство Flags). так же с помощью EventInfo можно узнать, какой именно жест происходит, а так же текущие координаты
     
    в качестве примера вот можете глянуть мою "демку" (это я делал пробу пера для одного проекта). код не претендует на звание эталонного, но вроде понятный
    test_touchanim.zip
  10. Like
    sinuke получил реакцию от Major в Drag в мобильных приложениях   
    необходимо использовать жесты. обрабатывать их нужно в событии OnGesture
    для определения того, что происходит в данный момент, есть EventInfo, с помощью которого можно узнать начался жест, окончился или нужно действовать по инерции (это свойство Flags). так же с помощью EventInfo можно узнать, какой именно жест происходит, а так же текущие координаты
     
    в качестве примера вот можете глянуть мою "демку" (это я делал пробу пера для одного проекта). код не претендует на звание эталонного, но вроде понятный
    test_touchanim.zip
  11. Like
    sinuke получил реакцию от Rusland в Drag в мобильных приложениях   
    необходимо использовать жесты. обрабатывать их нужно в событии OnGesture
    для определения того, что происходит в данный момент, есть EventInfo, с помощью которого можно узнать начался жест, окончился или нужно действовать по инерции (это свойство Flags). так же с помощью EventInfo можно узнать, какой именно жест происходит, а так же текущие координаты
     
    в качестве примера вот можете глянуть мою "демку" (это я делал пробу пера для одного проекта). код не претендует на звание эталонного, но вроде понятный
    test_touchanim.zip
  12. Like
    sinuke отреагировална Error в ErrorSoft TurboUpdate - Автообновление ваших Windows приложений   
    Выложена альфа версия ErrorSoft TurboUpdate - библиотека для легкого добавления автообновления в ваши FMX и VCL приложения под Windows.
    Совместимость - Delphi Seattle и выше.
    Описания пока нет, но в репозитории есть примеры для ознакомления.
    Лицензирование - для OpenSource и не коммерческого использования данная библиотека абсолютно бесплатна, допустимо изменение и т.д.
    Для коммерческого применения - пока нет решения.
    https://github.com/errorcalc/TurboUpdate
    Перед использованием необходимо установить необходимые Packages:
    TurboUpdateFmxOnly.groupproj - FMX only. TurboUpdateGroup.groupproj - VCL + FMX, зависит от ErrorSoftVclComponents(https://github.com/errorcalc/FreeEsVclComponents). Это ранняя альфа, необходимы ваши отзывы, критика и т.д.
  13. Like
    sinuke получил реакцию от Zawuza в Почему не работает OnMouseEnter у TLayout?   
    HitTest = True ???
  14. Like
    sinuke получил реакцию от Kitty в Почему не работает OnMouseEnter у TLayout?   
    HitTest = True ???
  15. Like
    sinuke получил реакцию от Равиль Зарипов (ZuBy) в Почему не работает OnMouseEnter у TLayout?   
    HitTest = True ???
  16. Like
    sinuke получил реакцию от dnekrasov в Почему не работает OnMouseEnter у TLayout?   
    HitTest = True ???
  17. Like
    sinuke получил реакцию от Равиль Зарипов (ZuBy) в Как определить скорость жестов?   
    скорость жеста можно определить по изменению координаты этого жеста (EventInfo.Location). Запомнить предыдущее положение и сравнить с теперешним. Если разность этих положений будет выходить за вами определенную дельту, то можно считать жест резким (мне пока только такой способ видится)
    а длина отрезка жеста... EventInfo.Distance?
     
    П.С. Это все определяется в OnGesture
  18. Like
    sinuke получил реакцию от Major в Как определить скорость жестов?   
    скорость жеста можно определить по изменению координаты этого жеста (EventInfo.Location). Запомнить предыдущее положение и сравнить с теперешним. Если разность этих положений будет выходить за вами определенную дельту, то можно считать жест резким (мне пока только такой способ видится)
    а длина отрезка жеста... EventInfo.Distance?
     
    П.С. Это все определяется в OnGesture
  19. Like
    sinuke получил реакцию от Kitty в Как определить скорость жестов?   
    скорость жеста можно определить по изменению координаты этого жеста (EventInfo.Location). Запомнить предыдущее положение и сравнить с теперешним. Если разность этих положений будет выходить за вами определенную дельту, то можно считать жест резким (мне пока только такой способ видится)
    а длина отрезка жеста... EventInfo.Distance?
     
    П.С. Это все определяется в OnGesture
  20. Like
    sinuke отреагировална Brovin Yaroslav в Описание TfgRadioGroup   
    Описание
    Назначение: Компонент предназначен для отображения группы TRadioButton и осуществления выбор. Поддерживает стилизацию.  Поддерживаемые платформы: Windows, OSX, iOS, Android Демо проект: Samples\RadioGroupDemo\RadioGroupDemo.dproj  
    Возможности
    Стилизация через указание двух картинок отображающих голос и пустой голос Настройки отображения заголовка группы TfgRadiouGroup.TextOptions.TitleTextSettings Возможность выбрать настройки отображения заголовка группы из стиля TfgRadioGroup.TextOptions.StyledTitleTextSettings Настройки отображения текста TRadioGroup TfgRadiouGroup.TextOptions.ButtonTextSettings Возможность выбрать настройки отображения текста TRadioGroup из стиля TfgRadioGroup.TextOptions.StyledButtonTextSettings Текущий выбранный вариант TfgRadioGroup.ItemIndex Возможность разбить варианты на колонки TfgRadioGroup.AlignOptions.Columns Возможность указать отступы для вариантов по вертикале и горизонател TfgRadioGroup.AlignOptions.HorzSpace, TfgRadioGroup.AlignOptions.VertSpace  Возможность узнать, когда пользователь делает выбор TfgRadioGroup.OnChanged
  21. Like
    sinuke отреагировална rakhmet в Жесты: zoom: in + out   
    Вопрос: как определить, какое именно действие совершает пользователь - увеличивает или уменьшает?

     
     
    Ответ: на примере сэмпла, поставляемого в комплекте с Delphi, в файле C:\Users\Public\Documents\Embarcadero\Studio\18.0\Samples\Object Pascal\Mobile Snippets\InteractiveGestures\ImageZoom\ImageZoomU.pas можно попробовать заменить одну часть процедуры:
    begin { zoom the image } LImage := TImage(LObj.GetObject); LImageCenter := LImage.Position.Point + PointF(LImage.Width / 2, LImage.Height / 2); LImage.Width := LImage.Width + (EventInfo.Distance - FLastDistance); LImage.Height := LImage.Height + (EventInfo.Distance - FLastDistance); LImage.Position.X := LImageCenter.X - LImage.Width / 2; LImage.Position.Y := LImageCenter.Y - LImage.Height / 2; end; на другую:
    begin { zoom the image } if EventInfo.Distance > FLastDistance then showmessage('zoom in') else showmessage('zoom out'); end;  
    Что с этим делать дальше — думаю, объяснять излишне.
     
     
    Если кто знает более элегантное решение, не основанное на вычислении дистанции, — смело делитесь, не стесняйтесь.
  22. Like
    sinuke получил реакцию от Kitty в [Андроид] интерфейс приложения   
    а я бы сделал в ListView
  23. Like
    sinuke получил реакцию от Равиль Зарипов (ZuBy) в [Андроид] интерфейс приложения   
    а я бы сделал в ListView
  24. Like
    sinuke получил реакцию от Равиль Зарипов (ZuBy) в Защита FMX   
    например kami у него софт, связанный с авиацией (куда уж серьезнее?) и написан как раз на FMX под iOS (если не ошибаюсь)
  25. Like
    sinuke получил реакцию от rareMax в Защита FMX   
    например kami у него софт, связанный с авиацией (куда уж серьезнее?) и написан как раз на FMX под iOS (если не ошибаюсь)
×
×
  • Создать...