как добавлять ресурсы и использовать их - PullRequest
8 голосов
/ 18 декабря 2009

В моем приложении я хочу добавить 2 изображения в качестве ресурсов

Я хочу использовать эти изображения, при нажатии кнопки «Да» в моем приложении первое изображение будет установлено в качестве обоев, а при нажатии кнопки «Нет» в моем приложении второе изображение будет установлено в качестве обоев рабочего стола

заранее спасибо

С уважением

1 Ответ

20 голосов
/ 18 декабря 2009

Самый простой способ - создать текстовый файл и присвоить ему имя resources.rc или что-то в этом роде (если оно не совпадает с именем файла вашего проекта, так как у него уже есть собственный файл ресурсов).

Если вы добавляете изображения, вам нужно добавить такие строки, как:

IMG_1 BITMAP "c:\my files\image1.bmp"
IMG_2 RCDATA "c:\my files\image2.jpg"

Обратите внимание, что первый параметр является уникальным идентифицирующим именем ресурса. Второй параметр - это тип ресурса. Доступны некоторые константы, такие как BITMAP и AVI. Для других используйте RCDATA. Третий параметр - это полный путь и имя файла ресурса.

Теперь в Delphi вы можете добавить этот файл .rc в свой проект в менеджере проектов.

Чтобы использовать ресурсы, вам нужны разные методы в зависимости от типа ресурса.

Чтобы загрузить растровое изображение, вы можете использовать:

imgWallpaper1.Picture.Bitmap.LoadFromResourceName(HInstance, 'IMG_1');

Чтобы загрузить JPEG, вам нужно конвертировать его так:

var
   jpgLogo: TJpegImage;
   RStream: TResourceStream;
begin
     RStream := TResourceStream.Create(HInstance, 'IMG_2', RT_RCDATA);
     Try
        jpgLogo := TJpegImage.Create;
        Try
           jpgLogo.LoadFromStream(RStream);
           imgLogo.Picture.Graphic := jpgLogo;
        Finally
           jpgLogo.Free;
        End;
     Finally
        RStream.Free;
     End; {Try..Finally}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...