Ostatnio uczę się pisać własne komponenty.Chcę stworzyć przycisk, który jest z wyglądu zwykłym obrazkiem, o kształcie np. trójkąta. W pliku bitmap1 jest obrazek, a w bitmap2 jego maska, czyli czarno-biały obrazek, w którym kolor biały to część, która chcę żeby była przezroczysta i kolor czarny, czyli część nieprzezroczysta.
Tworzę sobie 2 obiekty, które pokrywają się częściowo. Niestety część przykrywanego obrazka, która powinna być normalnie widoczna jest tak jakby zamglona.
Proszę o wszelkie porady.

  Graphics::TBitmap *bit = new Graphics::TBitmap;
  Graphics::TBitmap *Glypth = new Graphics::TBitmap;
  Glypth->LoadFromFile("C:/Program Files/Borland/CBuilder6/Projects/dynamiczne-komponenty/icons/Bitmap1.bmp");
  bit->LoadFromFile("C:/Program Files/Borland/CBuilder6/Projects/dynamiczne-komponenty/icons/Bitmap2.bmp");

  BitBlt(Canvas->Handle,0,0,ClientWidth,ClientHeight,bit->Canvas->Handle,0,0,SRCAND);
  BitBlt(Canvas->Handle,0,0,ClientWidth,ClientHeight,Glypth->Canvas->Handle,0,0,SRCPAINT);

  delete bit;
  delete Glypth;

Jest to część kodu dla komponenty dziedziczącego po TGraphicControl, ustawienie właściwości Transparent dla wczytywanych bitmap nie rozwiązuje problemu.