Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Современные методы хранения изображений в FireMonkey: альтернативы ImageList

Delphi , Графика и Игры , Изображения

В мире разработки под Delphi и Pascal, с появлением FireMonkey (FMX), разработчики столкнулись с необходимостью искать новые способы хранения изображений, так как компонент ImageList, знакомый по VCL, в FMX отсутствует. В этой статье мы рассмотрим, как можно хранить изображения в FireMonkey для использования в дальнейшем.

Проблема

В VCL для хранения изображений использовался компонент ImageList. В FireMonkey такого компонента нет, и это вызывает вопрос: как же хранить изображения в FMX для последующего использования?

Решение

Использование ресурсов

Один из подходов заключается в добавлении изображений в проект как ресурсов. Это можно сделать через меню Project -> Resources and Images. Изображения можно загружать в приложение, используя поток ресурсов, как показано в примере кода:

procedure TForm1.Button1Click(Sender: TObject);
var
  InStream: TResourceStream;
begin
  InStream := TResourceStream.Create(HInstance, 'MyPng', RT_RCDATA);
  try
    Image1.Bitmap.LoadFromStream(InStream);
  finally
    InStream.Free;
  end;
end;

Общий доступ к изображениям

Для управления общим доступом к изображениям на уровне приложения, можно использовать процедуры для загрузки изображений из ресурсов, как в следующем примере:

procedure TForm1.LoadImageFromResource(var Img: TImage; ResName: String);
var
  InStream: TResourceStream;
begin
  InStream := TResourceStream.Create(HInstance, ResName, RT_RCDATA);
  try
    Img.Bitmap.LoadFromStream(InStream);
  finally
    InStream.Free;
  end;
end;

Затем, изображения можно загружать в любом месте приложения, используя эту процедуру:

var
  Index: NativeInt;
begin
  Index := 1;
  LoadImageFromResource(Image1, 'Bitmap_' + IntToStr(Index));
end;

ZImageList в Delphi XE8 и выше

С версии Delphi XE8, в FireMonkey появился компонент TImageList, который можно использовать как аналог ImageList в VCL. Это позволяет разработчикам использовать знакомый подход к управлению изображениями в FMX.

Заключение

Хранение изображений в FireMonkey требует от разработчиков пересмотра подходов, используемых в VCL. Ресурсы и компонент TImageList (доступный начиная с Delphi XE8) предоставляют эффективные способы хранения и использования изображений в приложениях FMX. Применение этих методов позволит разработчикам продолжать создавать современные и функциональные приложения, используя возможности FireMonkey.

Создано по материалам из источника по ссылке.

Статья рассматривает альтернативные методы хранения изображений в FireMonkey, так как в этом фреймворке отсутствует компонент `ImageList` из VCL.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Изображения ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-02-20 22:30:15/0.0049428939819336/1