![](https://fire-monkey.ru/uploads/set_resources_12/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
Kitty
-
Постов
792 -
Зарегистрирован
-
Посещение
-
Победитель дней
16
Активность репутации
-
Kitty получил реакцию от xenon54 в Проблема при выходе из программы
К чему был ваш глубоко мыссленный и позновательный пост в моей теме?
Ответ по теме:
Если отключить компьютер от интернета, писать приложения для андроид на С++ Embarcadero просто не возможно. Интернет, нужен, чтобы найти решения на англоязычных форумах, а не среди справочной системы Embarcadero. Впрочем справочная система для С++ отсуствует.как класс Ну а мне помог снова англоязычный форум:
MainActivity()->finish();
-
Kitty отреагировална Brovin Yaroslav в [Android] Как очистить буфер обмена в С++ Builder XE7?
Добрый день,
Посмотрите тему Как скопировать текст в буфер обмена?
Чтобы очистить, нужно в буфер поместить TValue.Empty.
-
Kitty отреагировална xenon54 в Работа сервиса при закрытом приложении
Ну тут все просто. Remote Push Notification.
Вот, хороший видос на эту тему для ведра тынц
И сервис никакой не нужен.
Для ведра это называется "Google Cloud Messaging"
-
Kitty отреагировална Brovin Yaroslav в [TMapView] [XE8] Подскажите материалы по использованию компонента карт?
Добрый день,
Руководство использования Конфигурация андроид приложения для работы с Google Maps Статья в блоге об использовании TMapView в iOS и Android приложения -
Kitty отреагировална Brovin Yaroslav в [TGrid] Как получить значение ячейки при использовании LiveBinding?
Спрошу завтра у автора. Но пока я вижу только такой "красивый" вариант:
type TOpenGrid = class(TGrid); procedure TForm3.Grid1SelectCell(Sender: TObject; const ACol, ARow: Integer; var CanSelect: Boolean); begin TOpenGrid(Grid1).CallbackGetValue(ACol, ARow, procedure(AValue: TValue) begin // AValue - выбранное значение end); end; -
Kitty отреагировална Belov.V. в [TGrid] Как получить значение ячейки при использовании LiveBinding?
С того момента, как "стал рассматривать" TGrid непосредственно как компонент отображения существующих данных, работать с ним стало проще и приятнее. В похожих ситуация работаю непосредственно с данными (выборкой). То, что FDQuery и Grid связаны через LiveBinding, значения не имеет:
FDQuery1.RecNo := Grid1.Selected+1; ... := FDQuery1.FieldByName['id'].AsInteger; //или по порядковому номеру: ... := FDQuery1.Fields.Fields[0].AsInteger; //или тип Variant: ... := FDQuery1['id'] //и т.д. В зависимости от необходимого способа реакции код можно подвесить на onClick, onMouseMove и т.д. по желанию.
-
Kitty отреагировална Вячеслав в 3 формы в приложении
А вы уверены, что вам нужны именно формы? В некоторых ситуациях предпочтительней работать, например, с TRectangle. Их и скрывать/показывать удобно, и пошустрее работает, на мой взгляд.
-
Kitty отреагировална AngryOwl в ключ SHA1 - как получить?
Библиотека Indy, модуль IdHashSHA, класс TIdHashSHA1.
Надеюсь это что Вам нужно.
-
Kitty отреагировална AngryOwl в [Android] Прозрачность TMemo Delphi XE8
Отредактировать стиль. Например, добавив новый для "прозрачного" TMemo.
Что-то типа такого:
object TLayout StyleName = 'memofreestyle' EnableDragHighlight = False Position.X = 280.000000000000000000 Position.Y = 249.000000000000000000 Size.Width = 290.000000000000000000 Size.Height = 175.000000000000000000 Size.PlatformDefault = False Visible = False TabOrder = 97 object TActiveStyleObject StyleName = 'background' Align = Contents EnableDragHighlight = False Size.Width = 290.000000000000000000 Size.Height = 175.000000000000000000 Size.PlatformDefault = False ActiveTrigger = Focused ActiveLink = < item CapInsets.Left = 7.000000000000000000 CapInsets.Top = 7.000000000000000000 CapInsets.Right = 7.000000000000000000 CapInsets.Bottom = 7.000000000000000000 SourceRect.Left = 238.000000000000000000 SourceRect.Top = 86.000000000000000000 SourceRect.Right = 318.000000000000000000 SourceRect.Bottom = 113.000000000000000000 end> SourceLink = <> object TRectangle StyleName = 'Rectangle1' Align = Contents EnableDragHighlight = False Fill.Color = x32000000 HitTest = False Sides = [] Size.Width = 290.000000000000000000 Size.Height = 175.000000000000000000 Size.PlatformDefault = False Stroke.Color = xC8282828 Visible = False end object TLayout StyleName = 'content' Align = Client EnableDragHighlight = False Size.Width = 290.000000000000000000 Size.Height = 175.000000000000000000 Size.PlatformDefault = False end end object TBrushObject StyleName = 'foreground' end object TBrushObject StyleName = 'selection' Brush.Color = x7F67A8D3 end object TFontObject StyleName = 'font' end end -
Kitty получил реакцию от Nix0N в FixInsight vs FMX
Человек делает анализ библиотек поставляемых с Delphi.
Ссылка на статью: http://roman.yankovsky.me/?p=1774
-
Kitty получил реакцию от AngryOwl в FixInsight vs FMX
Человек делает анализ библиотек поставляемых с Delphi.
Ссылка на статью: http://roman.yankovsky.me/?p=1774
-
Kitty отреагировална Вячеслав в [Ресурс] FMXExpress.com
Думаю, иногда даже лучше давать не ссылку на конкретные статьи, а ссылку на ресурс. Уверен, что некоторым пользователям, особенно начинающим, будет полезно просто иногда просматривать сайты, посвященные FM.
К примеру, вот этот:
http://www.fmxexpress.com
Сайт на английском, но статьи очень доступные, для себя не раз находил интересные материалы.
-
Kitty отреагировална Brovin Yaroslav в [XE7] [Android] [TfgLinkedLabel] Не удается открыть браузер при клике на ссылку
Исправление включено в новую версию библиотеки FGX 0.6.0.46
-
-
Kitty отреагировална Brovin Yaroslav в [XE8] [FGX] Описание версии 0.6.0.46
Ссылка на скачивание (Только для RAD Studio XE8):fgx_0.6.0.46.zip
Инструкция по установке: "Инструкция по установке набора компонентов FGX"
Описание
Эта версия включает в себя следующий набор компонентов:
TfgFlipView (NEW) - слайдер изображений. Поддерживает несколько способов переключения фотографий при помощи эффектов и сдвигов. При первом использовании ОБЯЗАТЕЛЬНО прочитать инструкцию "TfgFlipView - Инструкция загрузки стиля" TfgPositionAnimation (NEW) - анимация свойств типа TPosistion TfgPosition3DAnimation (NEW) - анимация свойств типа TPosition3D TfgBitmapLinkAnimation (NEW) - анимация свойств типа TBitmapLink TfgProgressDialog - Компонент для отображения диалогового окна в момент выполнения длительной фоновой операции, когда время выполнения фоновой операции можно оценить. TfgActivityDialog - компонент для отображения диалогового окна в момент выполнения длительной фоновой операции, когда время выполнения операции не возможно адекватно оценить. TfgActionSheet - Аналог контекстного меню для мобильных платформ. TfgColorsPanel - Палитра цветов с возможностью выбора цвета. TfgGradientEdit - Компонент выбора градиента. TfgLinkedLabel (UPDATED) - Метка поддерживающая открытие Web ссылки в браузере по умолчанию. TfgApplicationEvents (UPDATED)- компонент с возможностью легко задать обработчики на основные события приложения: Отслеживание смены состояния приложения, простой, обновление и выполнение действий Actions, Изменение ориентации устройства и тд. TfgVirtualKeyboard (UPDATED) - компонент облегчающий работу с виртуальной клавиатурой. Позволяет задать пользовательские кнопки над виртуальной клавиатурой под iOS, а так же отлавливать события по отображению и скрытию клавиатуры. Зарегистрированы все стилевые объекты на вкладке "FGX: Style objects" Новое
TfgFlipView: Добавлен новый компонент для отображения слайдера изображений Поддерживает два принципиально разных способа смены изображений: сдвигом слайдов и смена при помощи широкого набора эффектов Тонкая настройка способов переключения слайдов TfgApplicationEvents: Добавлен перехват дополнительных событий приложения: Оповещение об изменении размера формы (OnFormSizeChanged) Оповещение о необходимости сохранить данные UI формы при изменении состояния приложения. Особенно актуально для мобильных платформ (OnSaveState) Изменение состояния приложения (OnStateChanged) Факт изменения стиля формы (OnStyleChanged) Все формы приложения на старте созданы (OnFormsCreated) Форма приложения разрушается (OnFormReleased) Изменение главной формы (OnMainFormChanged) Изменение заголовка главной формы (OnMainFormCaptionChanged) TfgPositionAnimation: Добавлен новый аниматор, позволяющий легко анимировать позицию 2D контрола Добавлен пример AnimationsDemo.dpr TfgPosition3DAnimation: Добавлен новый аниматор, позволяющий легко анимировать позицию 3D контрола Добавлен пример AnimationsDemo.dpr TfgBitmapLinkAnimation: Добавлен новый аниматор, позволяющий легко анимировать в стилях TBitmapLink. При помощи этого аниматоро легко сделать движущийся фон на базе одной растровой картинки. Добавлен пример AnimationsDemo.dpr TfgLinkedLabel Исправлена ошибка открытия ссылки в стандартном браузере на Андроиде TfgVirtualKeyboard Добавлено новое свойство Visible - видна виртуальная клавиатура или нет Общие улучшения Добавлен шаблонный класс (FGX.Animation.TfgCustomPropertyAnimation) для быстрого и удобного создания своих аниматоров. Общая чистка кода. -
-
-
Kitty получил реакцию от ivadimos в Нужна книга
Добрый день.
Можно и курсы, но опыт показывает, что это все же не так эффективно. Вон Эмбаркадеро сколько видео курсов проводит, а стоны со всех сторон – дайте манул, дайте справку…
Думаю работа в фоновом режиме над мануалом будет также хорошим решением.
А чтобы хотелось иметь первым делом:
Очень бы хотелось иметь мощный мануал страниц минимум на 300 по созданию приложений для платформы Андроид с помощью библиотеки FMX. iOS тоже важен, но начать логичнее все же с платформы, которая распространена гораздо шире.
Хотелось бы освещение таких вопросов:
1. Особенности использования FMX исходя из особенностей и требований ОС Андроид.
2. Правильная разработка интерфейсов исходя из платформы Андроид. Детальное рассмотрение компонентов TListView, TListBox, TMultiView при создании интерфейса программы. Работа с этими компонентами в десигн и рантайм. Правильный подход при создании многооконного приложения в Андроид, использование фреймов. Обработка ошибок.
3. Взаимодействие с Java и API (Androidapi::Jni…).
4. Работа со стилями.
5. Андроид и локальная база данных. Андроид и удаленная база данных (DataSnap).
6. Примеры решения типовых задач (работа с видео и т.д.).
7. Наметки использования FMX для решения реальных корпоративных задач. Показать первые шаги и правильный подход для решения таких, например, реальных задач как:
а) кладовщик на складе через планшет вводит данные в центральную базу данных и имеет доступ к актуальным данным компании.
б) таксист, сидя в машине на своем планшете с Андроид имеет полную информацию о заказах и очереди.
в) отслеживание на карте Google перемещения дальнобойных машин. Координаты присылает Андроид устройство из кабины водителя или по таймеру или по запросу из офиса.
Все это большие и объемные задачи – просто показать скелет правильного подхода решения реальных задач на платформе Андроид с помощью FMX. Или придумать свои корпоративные задачи для мануала.
Считаю FMX отличным выборам для решения именно корпоративных задач компании.
8. Обязательно дублировать код с Паскаля на С++.
По поводу пункта номер 8. Вот мой реальный опыт с FMX:
В С++ Builder XE6 создала приложение для корпоративного использования. Вопрос уперся в воспроизведение и остановке видео. Стандартный fmx плеер не работает на некоторых из Андроид устройств. Помогли на этом форуме рекомендацией использовать этот pas файл и МХ плеер: http://blog.csdn.net/flcop/article/details/17190009
Однако после подключения этого файла в С++ Builder сыпались AV. Никто уже не мог помочь, ни один форум ни одна справка, даже автор японец pas файла не знал в чем дело. И вот когда я уже была близка к присоединению к армии тех, кто ненавидит FMX, на одном из форумов промелькнул тайваньский товарищ, который сказал добавить в pas файл такой код:
procedure RegisterTypes;
begin
TRegTypes.RegisterType('Androidapi.JNI.ActivityManager.JDebug_MemoryInfo', TypeInfo(Androidapi.JNI.ActivityManager.JDebug_MemoryInfo));
end;
и все сразу заработало. Сейчас у японца полностью правильный pas файл и для С++.
Этот простой пример говорит о том, что если есть проверенный рабочий код для Дельфи, то это не факт, что все будет работать и в С++.
Дублирование правильного кода [паскаль-с++] сделает манул всесторонним и всеобъемлющим. Армия С++ наконец-то безболезненно присоединится к паскалистам и это хорошо для Эмбаркадеро.
Понятно, что у меня большой аппетит для такого мануала, но наличие такого манула это огромный шаг вперед для FMX. И не смотря на то, что он будет ориентирован на Андроид, он во много закроет многие другие вопросы, связанные с FMX для других платформ. Выпуск такого мануала (или бумажной книги) важен и жизненно необходим.
-
Kitty получил реакцию от Andrey Efimov в XE 8
What's New in RAD Studio XE8
https://www.embarcadero.com/ru/products/rad-studio/whats-new
-
Kitty отреагировална Brovin Yaroslav в [Статья] TImageList в Fire Monkey XE8
Ссылка: http://blogs.embarcadero.com/roschinspb/2015/03/03/timagelistxe8ru/ Автор: Сергей Рощин Подробный обзор нового компонента TImageList, появившегося в XE8. Отличия работы от VCL.
-
Kitty отреагировална Brovin Yaroslav в [Android] [XE7] Какой компонент выбрать для карты?
В XE8 добавлен новый компонент TMapView, который позволяет отобразить карту в вашем приложении и не только. Поддерживаемые платформы: Android и iOS.
Руководство использования Конфигурация андроид приложения для работы с Google Maps -
Kitty отреагировална Brovin Yaroslav в Google Maps или альтернатива.
В XE8 добавлен новый компонент TMapView, который позволяет отобразить карту в вашем приложении и не только. Поддерживаемые платформы: Android и iOS.
Руководство использования Конфигурация андроид приложения для работы с Google Maps -
-
-