Поиск сообщества

Показаны результаты для тегов 'FireMonkey'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Общие вопросы
    • Анимация
    • Графика
    • Стили
    • Базы данных и REST
    • Компоненты
    • Положение, размеры, выравнивание
    • Работа с текстом
    • Приложение и формы
    • Отладка
    • Развертывание приложений
    • Вопросы по языку Object Pascal и RTL
    • Общая информация о TControl
    • События
    • Прочие вопросы
  • Вопросы по платформам
    • Android
    • iOS
    • OSX
    • Windows
    • Windows Phone
    • Linux
  • Вопросы по использованию RAD Studio
    • Лицензирование
    • Сборка проектов
    • Multi-Device Designer
    • Редактор кода
    • Вопросы
  • Обучение
    • Основная информация
    • Вопросы
    • Отзывы
  • Поиск специалистов по FireMonkey
    • Консультации
    • Ищу подрядчика
  • API интернет сервисов
    • ВКонтакте API
    • Google Maps API
    • Yandex деньги
  • Дополнительные ресурсы по FireMonkey
    • Сторонние компоненты
    • Приложения, написанные с использованием FireMonkey
    • Примеры
    • Руководства
    • Шаблоны
    • Статьи и заметки
    • Информация о версиях RAD Studio
    • Новости
  • Организация работы данного форума
    • Правила форума
    • Нарушения правил форума
    • Предложения об организации форума
    • Проблемы
    • Функции форума
  • Видеокурсы
    • Основная информация
    • Курсы
    • Предложения и голосования за новые курсы
    • Вопросы

Категории

  • Курсы

Найдено: 36 результатов

  1. Всем привет. Учусь работать с ini-файлами на Android. И сразу же возникла проблема, которую никак не могу решить. Хотел написать подобие приложение-тест с хранением данных в ini файле. В итоге все отлично работает на windows,а под Андроид при запуске висит только значок firemonkey секунд 10 и приложение вырубается так и не запустившись. В чем может быть проблема? Использую отладку по USB. TIniFile *Ini = new TIniFile(System::Ioutils::TPath::GetDocumentsPath() + PathDelim + "options.ini"); Юзаю эти библиотеки #include <System.IOUtils.hpp> #include <System.IniFiles.hpp>
  2. Суть проблемы следующая: после перехода с одной вкладки на другую в tabcontrol страница не отображается, фактически она переключается но на экране отображается предыдущая вкладка с которой был переход, ровно до той поры пока на что нибудь не клацнешь, нужно либо нажать на кнопку в тулбаре либо открыть multiview. После того как я первый раз с этим столкнулся я так и делал программно открывал и закрывал multiview, но не могу же я так делать постоянно, нужно решить проблему. Для подробности напишу, что есть основной tabcontrol в котором вкладки открываются из multiview, во вкладках есть вложенные tabcontrol-ы, со своими страницами в основном по 2 страницы. Зря я начал делать приложения в делфи... чем дальше в лес тем больше дров.
  3. Воспроизведение MPG, Windows

    Добрый день Как заставить TMediaPlayer воспроизводить MPG файлы под Windows? MP4 воспроизводит, а mpg не хочет. Установлены кодеки KLite. Добавление строки TMediaCodecManager.RegisterMediaCodecClass('.mpg', 'MPEG Video', TMediaType.Video, TWindowsMediaCodec); не помогает.
  4. Нет ли у FMX готовой функции для открытия веб-ссылок из приложения? А то приходится городить огород с лисапетами и кучей IFDEF. В итоге что у меня получилось. Для удобства разнес все по разным модулям. Модуль для Windiws unit uUtilsWindows; interface {$IFDEF MSWINDOWS} uses ShellApi, Variants, Windows, FMX.Types, FMX.Platform.Win; procedure WindowsOpenUrl(const sUrl: string; WindowHandle: TWindowHandle); {$ENDIF} implementation {$IFDEF MSWINDOWS} procedure WindowsOpenUrl(const sUrl: string; WindowHandle: TWindowHandle); begin ShellExecute(FmxHandleToHWND(WindowHandle), 'open', PChar(VarToStr(sURL)), nil, nil, SW_NORMAL); end; {$ENDIF} end. Модуль для Android unit uUtilsAndroid; interface {$IFDEF ANDROID} uses FMX.Helpers.Android, Androidapi.JNI.Net, Androidapi.JNI.GraphicsContentViewText, AndroidApi.Helpers; procedure AndroidOpenUrl(const sUrl: string); {$ENDIF} implementation {$IFDEF ANDROID} procedure AndroidOpenUrl(const sUrl: string); Var Uri: Jnet_Uri; OpenLinkIntent: JIntent; begin Uri := StrToJURI(sUrl); OpenLinkIntent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW, Uri);// будем что-то смотреть OpenLinkIntent.addCategory(TJIntent.JavaClass.CATEGORY_BROWSABLE);// смотреть в браузере OpenLinkIntent.setData(Uri);// смотреть эту ссылку SharedActivity.startActivity(OpenLinkIntent);// открываем end; {$ENDIF} end. теперь в основной форме: uses ..., ...{$IFDEF ANDROID}, vkbdhelper, uUtilsAndroid{$ENDIF} {$IFDEF MSWINDOWS}, uUtilsWindows {$ENDIF}; ... ... ... procedure TfmEditObject.actOpenUrlExecute(Sender: TObject); begin {$IFDEF ANDROID}AndroidOpenUrl(edMapsCoordUrl.Text);{$ENDIF} {$IFDEF MSWINDOWS}WindowsOpenUrl(edMapsCoordUrl.Text, Self.Handle);{$ENDIF} end; А если добавлять ещё одну платформу, то ещё один модуль понадобится. Может есть более правильный вариант, так сказать, дизайна исходного кода?
  5. Привет ребят, созрел такой вопрос который меня мучает ! Вобщем пытаюсь загрузить картинку по прямой слыке с сервера. Картинка не грузится, не сохраняется не отображается. Конечная платформа - Андроид. Пишу на Delphi xe 10 seatle. Что я делаю? при нажатии на сам компонент TImage (созданный динамически), должна грузится картинка по адресу преждевременно записанное в hint (TImage) при создании вида (http://блаблабла.jpg) Раньше код ниже работал сейчас нет не пойму что не так. Почему стал ковырять? потому что форма встает колом при загрузке изображений. var s: string; fs: TFileStream; begin fs := TFileStream.Create(tpath.Combine(tpath.GetDownloadsPath, 'load.jpg'), fmCreate); NetHTTPClient1.Get((Sender as TImage).Hint, fs); fs.Free; (Sender as TImage).MultiResBitmap.Bitmaps[1].LoadFromFile (tpath.Combine(tpath.GetDownloadsPath, 'load.jpg')); подключал еще pas нашел на этом форуме FMX.Features.Bitmap.Helpers.pas (Sender as TImage).MultiResBitmap.Bitmaps[1].LoadFromUrl ((Sender as TImage).Hint); как проще сделать посоветуете чтоб и грузилось и форма не висла?
  6. ПРивет, есть ли возможность узнать как то номер сроки в memo на delphi FMX в memo при нажатии на текст в поле memo?для windows на vlc можно memo.CaretPos.Y либо через WinAPi заголовки. Как такое делать в FireMonkey FMX для андроид ума не приложу. Может кто делал, поделится опытом?
  7. Как можно узнать размер видеопамяти под WIN? В инете находятся решения через реестр, с помощью DX и другие, но все сообщения старые. Может есть какой способ узнать средствами FMX?
  8. Добрый день. Существует одна проблема, с которой уже несколько недель не могу справиться. Есть старый код под WinAPI, его нужно переделать под Android через firemonkey. И главная проблема - есть код, который из собственного формата делает HBITMAP из WinAPI. Фактически это структура, где последнее поле - указатели на биты. Это переделать легко, создав собственную копию такой структуры. Но теперь мне нужно перевести ее в TBitmap, и я не очень понимаю как это сделать.
  9. Привожу пример готового FMX приложения, которое рисует на форме с помощью интерфейса IDirect3DDevice9. В примере реализован вызов анонимного метода Present() интерфейса IDirect3DDevice9, имея ссылку на интерфейс и порядковый номер метода. Данная реализация пригодится при установке ловушек (Hooks). Вкратце, суть реализации такая: Объявляю процедурный тип нужного метода type TPresent9 = function(pSourceRect, pDestRect: PRect; hDestWindowOverride: HWND; pDirtyRegion: PRgnData): HResult of object; stdcall; Объявляю переменную этого типа var PPresent: TPresent9; begin ... IntRefToMethPtr(d3d9Dev, PPresent, 17); PPresent(nil, nil, DParametrs.D3DPP.hDeviceWindow, nil); Реализую процедуру получения метода интерфейса по номеру procedure IntRefToMethPtr(const IntRef; var MethPtr; MethNo: Integer); type TVtable = array [0 .. 999] of Pointer; PVtable = ^TVtable; PPVtable = ^PVtable; begin // QI=0, AddRef=1, Release=2, etc TMethod(MethPtr).Code := PPVtable(IntRef)^^[MethNo]; TMethod(MethPtr).Data := Pointer(IntRef); end; А теперь получаем метод интерфейса по его порядковому номеру и вызываем его IntRefToMethPtr(d3d9Dev, PPresent, 17); PPresent(nil, nil, DParametrs.D3DPP.hDeviceWindow, nil); Благодарю за оценку этого решения на StackOverflow. Скачать пример: D3DDemo.zip
  10. Мне нужно сделать снимок экрана из своего приложения в приложении DirectX (в игре). По-быстрому накидал приложение, исходники здесь: MakeScreenshot-Forum.zip 1. по нажатию единственной кнопки будет выполнена серия из 16 снимков экрана. Если запущен Скайп, то фотографироваться будет содержимое его окна. 2. По нажатии CTRL+ALT+F9 будет сделан единичный снимок 3. Label внизу показывает сколько миллисекунд затрачено на вывод снимка 4. В комментах так же вы найдете, как работать со снимками через буфер обмена. Работа выполняется через GetDC(NULL); Windows 10 x64. Снимки делаются. И DirectX тоже нормально фотографируется. НО! только в оконных приложениях. Если приложение DirectX полноэкранное, то на всех снимках одна и та же картинка с первого снимка. То есть изменение буфера экрана в приложении ни как не отражается на снимках. Что нужно? Необходимо делать снимки конкретного приложения через интерфейс DirectX, а точнее, я так понимаю, через DirectShow. Тогда не будет разницы в окне оно или на полный экран. Помогите плиз, знающие люди, с решением этой задачи. Гарантирую вам от сообщества большой почет, от меня огромный респект, если это принесет доход, то еще и очень приятный бонус. Ссылки теме: 1. DIRECTX FOR DELPHI 2. unofficial version of DelphiX 3. DirectX для начинающих 4. MinHook - The Minimalistic x86/x64 API Hooking Library 5. Various methods for capturing the screen 6. Вывод графики на рабочий стол Windows с использованием оверлеев DirectX 7. Project JEDI 8. Реализация перехвата вызовов API — исчерпывающе про внедрение DLL, если разобраться, + это на Delphi UPD: 9. Серия видео уроков Пишем D3D-хук — все понятно, только в Delphi перенести нужно. UPD 2: Научился рисовать в Direct3D и ловить интерфейс IDirect3DDevice9. Теперь делаю DLL ловушку для реализации снимков.
  11. Доброго времени суток! Подскажите, как узнать оригинальный размер картинки, загруженной в TImage ?
  12. Доброе время суток . Я только начал знакомится с потоками , не судите строго . Вот код . Смысл которого через отдельный поток загружать изображение с сервера . unit Unit5; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,iduri,idhttp, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Objects, FMX.Controls.Presentation, FMX.StdCtrls; type ThreadHTTP=class(TThread) private Stream:TMemoryStream; bmp:tbitmap; url:string; public constructor Create(abmp:tbitmap; aurl: String); procedure Execute;override; // procedure ShowResult; end; type TForm5 = class(TForm) Button1: TButton; Image1: TImage; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } procedure getpic(pic: string; img: Tbitmap); end; var Form5: TForm5; implementation {$R *.fmx} constructor ThreadHTTP.Create(abmp:tbitmap;aurl:string); begin inherited Create(false); bmp := abmp; url:=aurl; end; procedure ThreadHTTP.Execute; var j:integer; idhttp : TIdHTTP; ms:tmemorystream; png:tbitmap; begin ms := TMemoryStream.Create; IdHTTP := TIdHTTP.Create(nil); url:=TIdURI.URLEncode(url); try idhttp.Get(url,ms); ms.Position := 0; finally bmp.LoadFromStream(ms); idhttp.Free; ms.Free; end; end; procedure TForm5.Button1Click(Sender: TObject); begin getpic('krovat1',form5.Image1.Bitmap); end; procedure TForm5.getpic(pic: string; img: Tbitmap); var zapros:string; idhttp:tidhttp; MyHTTP:ThreadHTTP; begin zapros:='http://127.0.0.1/getimage_'+pic; MyHTTP:=ThreadHTTP.Create(img,zapros); MyHTTP.FreeOnTerminate := true; MyHTTP.resume; end; end. Код корявый , но работает в win32 . В Android ничего не происходит . Помогите разобраться , пожалуйста .
  13. Firemonkey Knowledge Base

    Раньше для Delphi был DKB (Delphi Knowledge Base), такой огромный сборник советов и примеров для программирования в среде Delphi (Tips and Tricks) Нет ли чего-то подобного для Firemonkey?
  14. Добрый день! Ищем программиста для работы над созданием Desktop CRM системы на Delphi (FireMonkey). Есть уже разработанный прототип, оболочка приложения. Система будет кросс-платформенной, сперва выпущена Desktop версия, а затем издана мобильная версия под Android и iOS. Требуется знание: Pascal(Delphi), PHP, MySQL Работа: возможно совмещение. Есть и реализовано: 1. 1.Опыт в создании однотипного продукта a. Созданая CRM-системы, выведенная на рынок (старая версия) b. Разработка технических заданий на доработку и разработку CRM-систем c. Внедрение и интеграция CRM-систем 2. 2.Опыт в реализации и продажи CRM-систем a. Знание рынка b. Знание потребностей целевой аудитории c. Выстроенная ценовая политика d. Разработанные ключи продаж e. Ведение переговоры с первыми лицами компаний 3. 3.Прототипы a. Описанные модули, требования к ним и их функциональные возможности b. Разработанный и свёрстанный дизайн на Embarcadero XE10.1 Berlin) 4. 4.Действующий и раскрученный сайт a. Действующий сайт с уровнем конвертации посетителя в «лид» 8-10% 5. 5.Разработанная маркетинговая продукция (КП, Документы, HTML-письма, и.т.д.) ППо всем вопросам пишите на почту: wasd.tech@mail.ru или в личные сообщения! Спасибо!
  15. uses Androidapi.JNI.App, Androidapi.JNI.JavaTypes, AndroidApi.JniBridge; procedure GetNotificationManager(var NfMn: JNotificationManager); var NotManObj : JObject; begin NotManObj:=SharedActivity.getSystemService(TJActivity.JavaClass.NOTIFICATION_SERVICE); NfMn:=TJNotificationManager.Wrap((NotManObj as ILocalObject).GetObjectID); end; для андроидов до 5.0 все ок начиная с 5.0 вылетает - "в приложении произошла ошибка" и досвиданья причем это происходит на многих вариантах getSystemService может кто знает в чем дело, я гуглил гдето встречал обсуждение но сечас найти чтото не могу, может знаете как быть путем разбиения на части выявил что проблема в (NotManObj as ILocalObject).GetObjectID этом куске - аксесс виолатион имеем
  16. Из VCL в FireMonkey

    http://midaconverter.com Кто нибудь пользовался? Как оно? Судя по описанию, можно поизучать FireMonkey! Написал на VCL, даже приложения с базами данных, vcl-ми гридами, конвертнул и потом подсматриваешь код, как что реализовано, для новичков в FireMonkey думаю будет полезно!
  17. Что выбрать VCL или FMX?

    Прошу участников поделиться мнениями. При создании приложения только для Windows, как мне узнать, что лучше выбрать VCL или FMX? Повлияет ли мой выбор на дальнейшую жизнь приложения? Приложение для работы с локальной БД SQL Server и получения пакетов из интернета.
  18. Berlin жутко тормозит

    Установил вчера (19.05.16) официальный Delphi 10.1 Berlin - IDE жутко тормозит на любые действия. При нажатии на меню выпадает через аж 45секунд! проверил на других машинах - также. Скомпилировал проект разработанный на Delphi10 Satelitte - тоже жутко стал тормозить. Особенно при выпадании пунктов меню MenuBar ~50сек. Открытие окна ~20сек! Через несколько минут вся винда стала тормозить - все окна липнут. Памяти свободной много, процессор не жрет. Попробовал закрыть IDE. Просто запустил своё скомпилированное приложение exe - такие же тормоза. Запустил старое приложение exe (скомпилированное на Delphi10 Seattle) - все шустро, как и было. снова запустил новый проект (exe)- тормоза. снова запустил старый - все шустро. У кого такая же ситуация?
  19. Как сделать так чтобы по нажатию на видео файл он сразу же добавлялся в TMediaPlayer в моем видео проигрывателе?
  20. Всем доброго времени суток, столкнулся с такой проблемой, на определенной форме включается медиаплеер и начинает проигрывать определенный трек, но при блокировке трек продолжает играть. Как обработать событие блокировки экрана и по нему отключать медиаплеер? Пишу на c++ builder. Пробовал делать через EnteredBackground, руководствовался заметкой по написанию подобного на Delphi xe http://delphifmandroid.blogspot.com/2013/10/blog-post.html Возможно есть другие варианты решения?
  21. TurboCocoa

    Build native application using Delphi. Design in Xcode or Android Studio. Code in Delphi. Build with TurboCocoa. TurboCocoa
  22. Диаграмма ганта

    Добрый день. Подскажите пожалуйста. как можно реализовать диаграмму ганта (линейный график) в TeeChart для мобильных устройств? ДляVCL приложений у компонента TChar есть стандартная серия Gantt. Для Multi-Device такой серии нет.
  23. пару вопросов по работе ActionSheet

    Пока писал вопросы, один решил 1) Создание динамически элементов получилось так: var fgItem: TfgActionCollectionItem; // uses FGX.ActionSheet.Types begin fgItem := fgActions.Actions.Add as TfgActionCollectionItem; fgItem.Caption := 'Контакты'; fgItem.OnClick := OnClickProc; end; 2) Как можно поменять шрифт? (я использую FontAwesome) 3) Как отловить закрытие? P.S. В качестве идеи/бреда, для десктопов можно было использовать TPopupMenu как основу
  24. Доброго всем времени суток. Подскажите, есть ли в FireMonkey возможность отслеживать сетевую активность в целом. Чтобы впоследствии можно было бы отобразить сколько байт передано/получено в секуну. Если в Windows это можно реализовать через WinAPI, то что делать с Android и IOS? Универсального средства нет?
  25. Здравствуйте, дорогие друзья! Открыл для себя firemonkey, и неожиданно поняд, что крос платформенность - тяжелая для меня ноша! Я хочу выполнить простую операцию, подгрузить в приложение список системных шрифтов, чтобы пользователь, мог сам выбрать, что ему нравится. Обнаружил, что в firemonkey нет TFontDialog, нет TFontList. Ситуация бесfontовая! Благо есть интернет. И там, добрый человек - честь и хвала ему - детально раскладывает, как решить эту задачу хоть для windows, хоть для Mac. https://delphiscience.wordpress.com/2012/11/20/getting-system-fonts-list-in-firemonkey-the-new-tplatformextensions-class/ Но снова судьба злодейка кинула! Коды на Delphi! А я только начал разбираться в СИ++. В общем, прошу Вас, друзья, помочь мне адаптировать тот код под СИ, и вконце концов получить список системных шрифтов: TPlatformExtention.h //--------------------------------------------------------------------------- #ifndef PlatformExtentionH #define PlatformExtentionH //--------------------------------------------------------------------------- #include <System.Classes.hpp> //--------------------------------------------------------------------------- class TPlatformExtention: public TObject{ public: void FGetSystemFonts( TStringList *FontList ); }; //--------------------------------------------------------------------------- #endif TPlatformExtention.cpp //--------------------------------------------------------------------------- #pragma hdrstop #include <string> #include "PlatformExtention.h" //--------------------------------------------------------------------------- int FEnumFonts( TLogFont LogFont, TTextMetric TextMetric, unsigned long FontType, long Data ){ TStringList *List = new TStringList(); UnicodeString fName; fName = LogFont.lfFaceName; if( List->Count == 0 || (AnsiCompareText(List[List->Count-1].Text, fName) != 0 ) ){ List->Add( fName ); return 1; } return 0; } //--------------------------------------------------------------------------- void TPlatformExtention::FGetSystemFonts( TStringList *FontList ){ HDC dContext; TLogFont *LogFont = new TLogFont; dContext = GetDC(0); StringOfChar( *(LogFont->lfFaceName), sizeof( LogFont ) ); LogFont->lfCharSet = DEFAULT_CHARSET; EnumFontFamiliesEx( dContext, LogFont, FEnumFonts, 0, 0 ); ReleaseDC(0, dContext); } //--------------------------------------------------------------------------- #pragma package(smart_init) Моя признательность всем откликнувшимся не знает границ. Всем спасибо