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

Лидеры

  1. Brovin Yaroslav

    Brovin Yaroslav

    Администраторы


    • Баллы

      2

    • Постов

      2 124


  2. brunnengi

    brunnengi

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


    • Баллы

      1

    • Постов

      293


  3. Kitty

    Kitty

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


    • Баллы

      1

    • Постов

      792


  4. xenon54

    xenon54

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


    • Баллы

      1

    • Постов

      385


Популярный контент

Показан контент с высокой репутацией 16.05.2015 во всех областях

  1. Добрый день, У вас все правильно написано. В вашем коде вы меняете иконку самого приложения в трее. А вот чтобы поменять иконку у формы, нужно отправлять сообщение WM_SETICON окну а не приложению: uses VCL.Graphics, Winapi.Windows, Winapi.Messages, FMX.Platform.Win; procedure TForm3.Button1Click(Sender: TObject); var NewAppIcon: TIcon; begin NewAppIcon := TIcon.Create; NewAppIcon.LoadFromFile('c:\icon.ico'); SendMessage(ApplicationHWND, WM_SETICON, 1, NewAppIcon.Handle); SendMessage(WindowHandleToPlatform(Handle).Wnd, WM_SETICON, 1, NewAppIcon.Handle); end;
    2 балла
  2. implementation uses IOUtils {$IFDEF IOS} ,iOSapi.Foundation, FMX.Platform.Ios, iOSapi.UIKit, Macapi.Helpers {$ENDIF} ; procedure TForm1.Button1Click(Sender: TObject); var fpath: string; begin fpath:= TPath.GetDocumentsPath + PathDelim + 'filename.extention'; OpenIn(fpath); end; procedure TForm1.OpenIn(path: string); {$IFDEF IOS} var controller : UIDocumentInteractionController; URL: NSURL; {$ENDIF} begin {$IFDEF IOS} URL := TNSUrl.Wrap(TNSUrl.OCClass.fileURLWithPath(StrToNSStr(path))); controller := TUIDocumentInteractionController.Wrap( TUIDocumentInteractionController.OCClass.interactionControllerWithURL(URL)); controller.presentOpenInMenuFromRect( WindowHandleToPlatform(self.Handle).View.frame, WindowHandleToPlatform(self.Handle).View,true); {$ENDIF} end;
    1 балл
  3. В настройках касталии отключается castalia->options->editor->smart highlighting
    1 балл
  4. Т.к. похожая тема закрыта, пришлось создавать новую. Ситуация такая: есть кастомный listboxitem с детальной информацией. Еще есть бешеное желание перекрашивать текст Detail в зависимости от содержимого: соответствует содержимое условию или нет. Возможно-ли создать свой собственный триггер, на который потом повешать анимацию изменения цвета? Или тут всё сложнее: сделать наследника TListBox, добавить ему булевое свойство (соответствует / не соответствует) и уже на это свойство вешать триггер? (если какой-нибудь примерчик попрошу, ногами пинать не будете?)
    1 балл
  5. Здравствуйте. Есть видео файл. При использование на форме mediaPlayerControl'а он воспроизводит видео поверх всего. Т.е. если взять TabContol и создать в нём две вкладки - TabItem1 и TabItem2 и в TabItem2 поместить MediPlayerControl с играющим видео, то даже если мы в процессе переключимся на на вкладку TabItem1, видео все равно будет видно. Сам видеоряд состоит из 150 кадров. Размер 600ш на 840в. Т.е. я могу конечно раскадрировать файл. Но что мне потом использовать для адекватного отображения на форме? Я так понимаю что даже BitmapListAnimation мне тут не помощник, ибо, насколько я помню, у него есть свои ограничения на размеры. Так что мне тогда использовать?
    1 балл
  6. Kitty

    Нужна книга

    Добрый день. Можно и курсы, но опыт показывает, что это все же не так эффективно. Вон Эмбаркадеро сколько видео курсов проводит, а стоны со всех сторон – дайте манул, дайте справку… Думаю работа в фоновом режиме над мануалом будет также хорошим решением. А чтобы хотелось иметь первым делом: Очень бы хотелось иметь мощный мануал страниц минимум на 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 для других платформ. Выпуск такого мануала (или бумажной книги) важен и жизненно необходим.
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...