Създаване на бутон BitBtn в KOL

Здравейте! Моля, кажете ми как да създам бутон BitBtn, ако е възможно, дайте пример. Намерих това описание: function NewBitBtn( AParent: PControl; const Caption: String; Options: TBitBtnOptions; Layout: TGlyphLayout; GlyphBitmap: HBitmap; GlyphCount: Integer): PControl;

Просто не мога да разбера свойството GlyphBitmap: HBitmap.

MSDN: HBITMAP Манипулатор на растерно изображение. Ако е по отношение на KOL обекти, тогава това е TBitmap.Handle

Ако изображението е в зареждаем модул BitBtn1 := NewBitBtn( Form, "BitBtn1", [ ], glyphLeft, LoadBmp( hInstance, "BITBTN1_BITMAP", Result ), 1);

Пиша следния ред: BitBtn1:=NewBitBtn(Bparam,"",[bboNoCaption],glyphOver, LoadBmp( hInstance, "e:\vv.bmp", Result ),1).SetSize(25,25).PlaceDown.Shift(20,15);

Но или не намира картината, или аз не знам. Променливата Result:Pobj е просто декларирана и равна на нищо. Какво не е наред отново? (Запомнете, това е за KOL)

съвет: инсталирайте MCK и a) не се потете b) или гледайте как MCK прави и копирайте неговите извиквания във вашия чист проект.

По пътя изникна и един въпрос: закачам растерно изображение към BitBtn, което е изображение на бял фон, а на бутона този бял фон остава бял, т.е. непрозрачен. Долният ляв пиксел в растерното изображение е бял, т.е. ако използвам същата картина на VCL SpeedButton, тогава всичко е наред - фонът е прозрачен. Или е необходимо маската да се настрои отделно по някакъв начин? Какво?

Какво ще кажете да направите бутона прозрачен?

Ай, гуру, може ли някой да отговори на последните 2 въпроса?

> Наистина ли е възможно да направите бутона прозрачен?Да> Хей гуру, може ли някой да отговори на последните 2 въпроса?Да, мога. (въпреки че не е гуру) Отговорено? :)

Но сериозно -закарайте изображението в ImageList и го закрепете към BitBtn. Това е най-лесният (за MCK) начин.

И ако от dll?

> Но сериозно - закарайте снимката в ImageList и я прецакайте > към BitBtn. Това е най-лесният (за MCK) начин.

Благодаря, помогна. Но аз съм упорит човек и затова друг въпрос: защо KOL-ovsky BitBtn не иска да приеме темата на WinXP - бутонът, както беше сив квадрат, си остава този квадрат, въпреки всички манифести. Как мога да я направя красива?

> защо KOL-ovsky BitBtn не иска да приеме темата WinXPЗащото това е бутон със собствен чертеж BS_OWNERDRAW. Рисува KOL (не Windows). Но кодът за изобразяване е нормален без използването на теми. Можете да опитате да го завършите - нещо подобно беше направено за GRAPHCTL_XPSTYLES (BitBtn за съжаление не е наличен в графичните контроли)