Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Каким образом можно преобразовать данные с TIcon в TBitmap ? [D5, Win95/98]


Soft ©   (2002-08-19 21:45:00) 

Привет всем, кто это читает.

Вот собственно вопрос дан в сабже. Как это это сделать без особых проблемм? Скорее всего это можно сделать в одну строчку.

Заранее спасибо, безглючного кода вам и всего-всего...


Soft   (2002-08-22 13:22:00) [1]

Спасибо.
Picture:=TPicture.Create;
Picture.Assign(icon);

Menuitem.Bitmap.Width:=Picture.Graphic.Width;
Menuitem.Bitmap.Height:=Picture.Graphic.Height;
Menuitem.Bitmap.Canvas.Draw(0,0,Picture.Graphic);

Я предпочитаю обычную фентези-игру за компьютером


Ketmar   (2002-08-21 09:23:00) [2]

все просто. вот кусочек вкусного кода :-), который конвертирует иконку в битмап. исходя из него, Я полагаю, вы сможете написать все, что вам надо. не знаю, может есть способ и попроще, однако Я когда-то нарыл этот, и вполне успешно его использовал...


program I2B;

uses
SysUtils, Classes, Graphics;

var
Pic: TPicture;
Bmp: TBitmap;

begin
if (ParamCount < 1) then exit;
Pic := TPicture.Create;
Pic.LoadFromFile(ParamStr(1));

Bmp := TBitmap.Create;
Bmp.Width := Pic.Width;
Bmp.Height := Pic.Height;
Bmp.PixelFormat := pf24bit;
Bmp.Canvas.Draw(0, 0, Pic.Graphic);

Pic.Free;

Bmp.SaveToFile(ChangeFileExt(ParamStr(1), ".bmp"));
Bmp.Free;
end.


Satanas Nobiscum! 21-Aug-XXXVII A.S.


Soft   (2002-08-20 19:10:00) [3]

Не подходит. Выводит сообщение Cannot Assign TIcon to a TBitmap.

А нужно это мне для добавления пиктограммы в меню из иконки формы, с которой я добавляю итем в меню. Там разные типы; у формы TIcon у меню TBitmap


Денис М Радченко   (2002-08-20 17:23:00) [4]

>Скорее всего это можно сделать в одну строчку
Угадал :) Bitmap.Assign(Icon);


Наверх

Титульная страница Поиск, карта сайта Написать письмо