I have created a window that is partially transparent

using a call to
SetLayeredWindowAttributes

if I pass LWA_COLORKEY into it, as in

SetLayeredWindowAttributes(Self.Handle, clWhite, ALPHA_VALUE, LWA_COLORKEY);

then everything that is white is completely transparent

if I pass the LWA_Alpha into it as in

etLayeredWindowAttributes(Self.Handle, clWhite, 128, LWA_Alpha);

then everything is 50% transparent

if I pass both parameters in as in

SetLayeredWindowAttributes(Self.Handle, clWhite, ALPHA_VALUE, LWA_Alpha or LWA_COLORKEY);

then all the white areas are transparent, and everything else is 50%

is there a way to get only the white area to be 50% transparent, and everything else to be 100% visible