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

rareMax

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

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

  • Посещение

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

    35

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

  1. Like
    rareMax отреагировална Sergiy_83 в Проблемы с размерами компонентов.   
    Нужно использовать еще и якоря. См. пример.
    Может вам подойдет.  
    EX.zip
  2. Like
    rareMax получил реакцию от dnekrasov в Проблемы с размерами компонентов.   
    Помимо свойства Align используйте TLayout для группировки компонентов. Приложите простую демку - и возможно вам покажут как сделать пропорциональное изменение дизайна. 
    Еще обратите внимание на компонент TScaledLayout - он изменяет размеры всех дочерних контролов пропорционально изменению своих размеров
  3. Like
    rareMax получил реакцию от Barbanel в Проблемы с размерами компонентов.   
    Помимо свойства Align используйте TLayout для группировки компонентов. Приложите простую демку - и возможно вам покажут как сделать пропорциональное изменение дизайна. 
    Еще обратите внимание на компонент TScaledLayout - он изменяет размеры всех дочерних контролов пропорционально изменению своих размеров
  4. Like
    rareMax отреагировална IVGSoft в Обработка анимированных GIF по рецепту китайского коллеги   
    В конце концов получилось исправить.
    Для interlaced гифок проблема была вообще пустяковая. Одна строчка не в том месте. А вот для optimized все оказалось несколько сложней, но в итоге теперь все гифки отображаются правильно.
    Пользуйтесь на здоровье!
    FMX.GifUtils.zip
  5. Like
    rareMax отреагировална dnekrasov в Использование своего шрифта под Windows   
    В Berlin и Tokyo AddFontResource и RemoveFontResource прекрасно отрабатывают, только вызывать их надо до Application.Run.
    Кстати, лучше использовать  AddFontResourceEx и RemoveFontResourceEx с флагом FR_NOT_ENUM - тогда надобность в SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0) отпадает.
  6. Like
    rareMax отреагировална POV в Как задать градиентную заливку TChart?   
  7. Like
    rareMax получил реакцию от Anatoliy в получить ссылку на видео   
    Прямой ссылки не будет. Есть m3u плейлист, который будет подгружаться после нажатия "Плей" в плеере на сайте. 
  8. Thanks
    rareMax отреагировална ENERGY в Как запретить вставку в TEdit из буфера обмена на android?   
    Это видимо чтобы сделать "введите email повторно", самая раздражающая функция на Земле.
  9. Like
    rareMax получил реакцию от Paradox Naxer в Telega π - Библиотека для работы с Telegram Bot API в Delphi   
    cuHttpClientSysNet1.Proxy:=TcuProxy.Create(EditHost.Text, EditPort.Value, EditUserName.Text, EditPassword.Text); 
    попробуй так
  10. Like
    rareMax отреагировална willi в Простой график для вывода точек и столбцов   
    Написал в XE10.1 простой модуль для вывода кривых на TImage  в виде графика - есть возможность вывода столбцов для диаграмм, меток с надписями и прочей мелочи.
    В виде компонента не оформлял...    Смысл: вводим массив точек - график сам подбирает область вывода чтобы влезли надписи и выводит с указанными параметрами и стилем кривые (имею в виду зависимости Y от X).
    Есть комментарии в коде - есть пример для тестов - см. проект https://github.com/willi-spb/arTrassing
    желательно тестирование, возможно я что-то упустил - сам модуль: https://github.com/willi-spb/arTrassing/blob/master/FMX.arCurveClasses.pas

  11. Like
    rareMax получил реакцию от Andrey Efimov в Как узнать, что Android приложение свернуто?   
    Прочитайте эту статью: http://delphifmandroid.blogspot.com/2016/09/delphi-android.html
  12. Like
    rareMax получил реакцию от Rusland в Производительность отрисовки текста на мобильных платформах   
    Тык тык https://github.com/zhaoyipeng/FMXComponents/blob/master/ComponentsSource/FMX.Graphics.NativeCanvas.pas
  13. Like
    rareMax получил реакцию от Ingalime в Функция возвращает разное значение на andoroid и win   
    {$ZEROBASEDSTRING ON} и работай с учётом что строка с 0 начинается.
     
    Либо юзай хелперы
  14. Thanks
    rareMax получил реакцию от Superator в Функция возвращает разное значение на andoroid и win   
    {$ZEROBASEDSTRING ON} и работай с учётом что строка с 0 начинается.
     
    Либо юзай хелперы
  15. Like
    rareMax отреагировална Alex7wrt в Audio Streaming   
    Под Android я тоже делал аудио чат родными средствами, но через Bass получилось лучше и проще. В частности, там буферизация из коробки, можно эффекты накладывать, например усиление голоса при записи через микрофон. Поэтому и предложил, ведь под Bass код, что под Android, что под iOS, один и тот же.
    Поделиться не сложно. Ниже надергал основную схему из того приложения, о котором говорил выше.  
    uses FMX.Radio.Bass; var BLoaded: boolean; chanPlay, ChanMic: Dword; avail, freq: word; buffer: TIDBytes; procedure TForm1.OnCreate(Sender: TObject); begin //Создаем UDP сервер UDP_Rec:=TIDUDPServer.Create; with UDP_Rec do begin DefaultPort:=UDP_RecPort; BufferSize:=1600; BroadcastEnabled:=true; Active:=true; end; freq:=16000; //Частота дискретизации setlength(buffer,UDP_Rec.BufferSize); BLoaded:=BASS_Init(-1, 44100, 0, nil, nil); //Подключаем библиотеку BASS_RecordInit(-1); //Инициализируем запись end; //Захват звука с микрофона procedure TForm1.Recording(Sender: TObject; const Point: TPointF); begin isrecording:=not isrecording; if isrecording then begin UDP_Rec.OnUDPRead:=nil; chanMic:=BASS_RecordStart(freq, 1, 0, nil, nil); VoiceThread:=TVoiceThread.Create; //Создание потока для отправки по UDP end end; //Передача буффера в потоке procedure TVoiceThread.Execute; begin while isrecording do begin try avail:=BASS_ChannelGetData(chanMic, nil, BASS_DATA_AVAILABLE); if avail>=UDP_Rec.BufferSize then begin //Если в буффере собралось не меньше 1600 байт, отправляем try BASS_ChannelGetData(chanMic, buffer, UDP_Rec.BufferSize); UDP_Rec.Broadcast(Buffer,UDP_RecPort); except end; end; finally sleep(20); end; end; BASS_ChannelStop(chanmic); BASS_StreamFree(chanmic); end; //Создание канала для воспроизведения звука из буффера: procedure TForm1.receiving(Sender: TObject); begin chanPlay:= BASS_StreamCreate(freq, 1, 0, STREAMPROC_PUSH, nil); UDP_Rec.OnUDPRead:=UDP_RecRead; BASS_ChannelPlay(chanPlay, false); end; //Получаем буффер из UDP procedure TForm1.UDP_RecRead(AThread: TIdUDPListenerThread; const AData: TIdBytes; ABinding: TIdSocketHandle); begin try BASS_StreamPutData(chanPlay, AData,length(AData)) except end; end; Bass.zip
  16. Like
    rareMax получил реакцию от Barbanel в Производительность отрисовки текста на мобильных платформах   
    Тык тык https://github.com/zhaoyipeng/FMXComponents/blob/master/ComponentsSource/FMX.Graphics.NativeCanvas.pas
  17. Like
    rareMax получил реакцию от Евгений Корепов в Производительность отрисовки текста на мобильных платформах   
    Тык тык https://github.com/zhaoyipeng/FMXComponents/blob/master/ComponentsSource/FMX.Graphics.NativeCanvas.pas
  18. Like
    rareMax получил реакцию от IVGSoft в Производительность отрисовки текста на мобильных платформах   
    Тык тык https://github.com/zhaoyipeng/FMXComponents/blob/master/ComponentsSource/FMX.Graphics.NativeCanvas.pas
  19. Like
    rareMax получил реакцию от Вадим Смоленский в Доступ к классу ApplicationData   
    C:\Windows\System32\windows.storage.dll
  20. Like
    rareMax отреагировална Vlad Dubov в Инструкция по установке набора компонентов FGX   
    Для тех, у кого  ошибка с dclfg.***bpl  "Design-Time пакет. Выдает ошибку: E2225 Never-build pakage 'fgx' must be recompiled"  на Berlin 10+:
    1) У обоих пакетов устанавливаем "Options->Description->Build control->Rebuild as need";
    2) Переустанавливаем пакет "fgx.***bpl" с этой опцией (fgx240.bpl);
    3) Находим "fgx.dcp" в $(BDS)\lib\win32\debug (этот путь прописан у "fgx.***bpl" в "Options->Delphi Compiler->DCP output directory" как "$(BDSLIB)\$(PLATFORM)\$(CONFIG)", например у меня это "C:\Program Files (x86)\Embarcadero\Studio\18.0\lib\win32\debug") и кладём в папку R101 (Update 1)\Design", где лежит "dclfgx.dproj";
    4) Туда же кладём все ".pas" из папки "R101 (Update 1)\Library";
    5) Теперь можно устанавливать design-time пакет "dclfgx.***bpl"
  21. Like
    rareMax получил реакцию от МихаилЪ чайковЪ в Telega π - Библиотека для работы с Telegram Bot API в Delphi   
    Автор: Максим Сысоев
    Репозиторий: Github
    Связь со мной: Telegram
     
    Telega π - Библиотека для работы с Telegram Bot API в Delphi
    Библиотека для работы с Telegram Bot API
    Зависимости
    RAD Studio CE  CloudAPI Примеры
    Получение Username бота
    program Project5; {$APPTYPE CONSOLE} {$R *.res} uses TelegaPi.Bot, TelegaPi.Types, System.SysUtils; var Telegram: TTelegramBot; begin Telegram := TTelegramBot.Create({$I TokenTelegramBot.inc}); try { TODO -oUser -cConsole Main : Insert code here } Writeln(Telegram.getMe.Username); except on E: Exception do Writeln(E.ClassName, ': ', E.Message); end; Readln; Telegram.Free; end. Пример автоответчика
    Напишите ему "привет"
    Код: https://gist.github.com/ms301/c7281f443f481115b7643116535e697d  

  22. Like
    rareMax получил реакцию от Вадим Смоленский в Детский вопрос про область видимости переменной   
    Вынеси эту переменную в отдельный модуль 'MyVariableUnit.pas' и добавь его во все места, где нужно обращаться к переменной
  23. Like
    rareMax получил реакцию от Евгений Корепов в Детский вопрос про область видимости переменной   
    Вынеси эту переменную в отдельный модуль 'MyVariableUnit.pas' и добавь его во все места, где нужно обращаться к переменной
  24. Like
    rareMax отреагировална FREEFAR в Баг в Tokio   
    Мы решили такую беду через чудо костыль.
    ABitmap := Rectangle.MakeScreenshot;
    Image.Bitmap.assign(ABitmap);
    ABitmap.DisposeOf;
    короче говоря вместо Rectangle который вечно пересчитывается и редндерится, Image;
    profit )
  25. Like
    rareMax отреагировална r@di0 в Убрать поле при сериализации   
    TFoo = class(TObject)
      private
        [JSONMarshalled(False)]
        FAge: Byte;
      public
        FName    : string;
        FSurname : string;
      end;
×
×
  • Создать...