Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.14;
Скачать: CL | DM;

Вниз

png с альфа каналом на кнопке toolbar а   Найти похожие ветки 

 
Tirex   (2005-02-28 21:10) [0]

Как добавить png с альфа каналом на кнопку toolbar"а?
Такого рода вопросы уже попадались, я их прочел, но ответа на свой вопрос так и не нашел.
Нашел одно решение но это не совсем то что надо
использовал модуль pngimage (http://pngdelphi.sourceforge.net)
procedure LoadIcons;
var
PNG: TPNGObject;
BMP: TBitmap;
I: integer;
dHandle: THandle;
begin
BMP := TBitmap.Create;
BMP.Width:=48;
BMP.Height:=48;
Bmp.Canvas.Brush.Color:=clBtnFace;
bmp.Canvas.FillRect(bmp.Canvas.ClipRect);

png:= TPNGObject.Create;

for i:=1 to 2 do
begin
 Bmp.Canvas.Brush.Color:=clBtnFace;
 bmp.Canvas.FillRect(bmp.Canvas.ClipRect);
 png.LoadFromResourceID(hinstance,2000+I);
 BMP.Canvas.Draw(0, 0, PNG);
 Form1.imlToolbar.Add(bmp,nil);
end;
 BMP.Canvas.Draw(0, 0, PNG);
 Form1.imlToolbar.Add(bmp,nil);
png.free;
bmp.free;
все бы ничего, но при нестандартных темах оформления (XP) под иконкой на кнопке виден квадрат.
Чувствую что можно это сделать с pngimage. Подскажите если кто уже пробовал? Может есть другой способ. (икоки с альфа каналом не пойдет, не работает под 98 и ранних win).


 
Tirex   (2005-03-01 20:12) [1]

Как вариант можно перехватить onpaint кнопки и рисовать фон тем же цветом каким фон кнопки. как это сделать?  Хотя если там градиент это не будет работать.



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

Текущий архив: 2005.06.14;
Скачать: CL | DM;

Наверх




Память: 0.44 MB
Время: 0.042 c
3-1114784643
slaga
2005-04-29 18:24
2005.06.14
Ожидание подключения к удаленой БД


14-1116937612
rOOse
2005-05-24 16:26
2005.06.14
Кто-нибудь читал книгу


11-1084360316
AlexR
2004-05-12 15:11
2005.06.14
ScrollBox и мышь


1-1117516990
liver
2005-05-31 09:23
2005.06.14
изображение из ImageList в Image


14-1117049969
Nic87
2005-05-25 23:39
2005.06.14
Worlds3D - присоединяйтесь!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский