To use BitBlt? Try this example. It will first lay your Mask down; and then your Sprite. Call them picMask and picSprite.
Code for a module.
Code:
Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
Public Const SRCAND = &H8800C6
Public Const SRCCOPY = &HCC0020
Public Const SRCPAINT = &HEE0086
Public Const MERGEPAINT = &HBB0226
Code for a CommandButton.
Code:
BitBlt Form1.hDC, 0, 0, picMask.Width, picMask.Height, picMask.hDC, 0, 0, SRCAND
BitBlt Form1.hDC, 0, 0, picSprite.Width, picSprite.Height, picSprite.hDC, 0, 0, SRCPAINT