Вниз
Скачать: CL | DM;

Как, как можно проще переделать Bitmap в Icon   Найти похожие ветки 

 
Tigert ©   (2004-11-28 19:37) [0]

Вообще-то хотел сделать подобие часиков в системном трее. С треем проблем нет. А вот как приготовить для него иконку - тут уж.... слов нет. Мучался, мучался:
- создаю TPicture,
- рисую на его Bitmap"е текущее время,
- создаю TIcon,
- делаю aIcon.assign(aPicture.Icon);
и нифига, некакой реакции. aIcon пуста,в aPicture.Icon тож пусто.
В книженции написано что aPicture.Icon интерпретирует графич. объект как иконку. Может я не так понимаю. ПОМОГИТЕ пожалуста.
...Заранее благодарен.


 
Mihey_temporary ©   (2004-11-28 19:51) [1]

How do I create an icon from a bitmap?
http://bdn.borland.com/article/0,1410,17748,00.html


 
grom   (2004-11-29 19:27) [2]

procedure TForm1.Button1Click(Sender: TObject);
var
newIcon : tIcon ;
ImageList : tImageList ;
hBmp : THandle;
BkCol : TColor;
begin
// Определяем цвет фона картинки
hBmp := bmpImage.Picture.Bitmap.Canvas.Handle ;
BkCol := GetPixel(hBmp, 0, 0) ;

// Засовываем Bitmap в ImageList
ImageList := tImageList.Create(self) ;
ImageList.AddMasked (bmpImage.Picture.Bitmap, BkCol) ;

// Перекладываем Bitmap в Icon
newIcon := tIcon.Create ;
ImageList.GetIcon (0, newIcon) ;

// Сохраняем полученную иконку в файле
newIcon.SaveToFile (icoFileName) ;

newIcon.Free ;
ImageList.Free ;
end
//////////
procedure TForm1.Button1Click(Sender: TObject);
var
iml:TImageList;
begin
iml:=TImageList.CreateSize(32,32);
Iml.AddMasked(Image1.Picture.Bitmap,clWhite);
Iml.GetIcon(0,Image2.Picture.Icon);
Image2.Picture.SaveToFile("1.ico");
iml.Free;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
14-1109576048
DVM
2005-02-28 10:34
2005.03.20
Помогите потестировать скрипт PHP (разбор HTTP_USER_AGENT)


14-1109927208
DelphiN!
2005-03-04 12:06
2005.03.20
Странная проблемма при записи в таблицу DB FireBird


6-1105662396
encore
2005-01-14 03:26
2005.03.20
Соединение сокетом через Прокси Socket4, Socket5


1-1110347541
Vilux
2005-03-09 08:52
2005.03.20
Timer в dll


1-1109933326
MTsv DN
2005-03-04 13:48
2005.03.20
LIB -> OBJ




   Наверх