Drawing On Everything Even Windowed Controls

Is there any easy way to draw on Windowed controls?  I have an
OCX which draws a map of the United States, and I would like to
implement a zooming function using the mouse as an input device.

The problem is that the OCX behaves like a Windowed control in
that all non-windowed element are hidden behind it.

I have tried creating my own TCanvas to solve this problem,
but always causes an exception.  Here is what I am trying.

TCanvas *MyCanvas;

TFrom1::TForm1()
{

MyCanvas = new TCanvas();
MyCanvas->Handle = MapOCX->DeviceContext;         // THIS WILL NOT COMPILE

  // I GET THE ERROR MESSAGE THAT THE COMPILER CAN NOT

  // CONVERT int to void *

  // IF Handle IS SUPPOSED TO BE AN HDC, why is it void *

Quote
}

TForm1::MouseMove (....)
{

MyCanvas->Pen->Mode = pmNot;
MyCanvas->Brush->Style = bsClear;

MyCanvas->Rectangle (10, 10, 100, 100);

Quote
}

Anyway, I basically need some method that will let me draw a banding
rectangle on top of anything regardless of
whether it is a Windowed control or not.  I figured if I could assign the
device context for the Canvas to the device
context of the MapOCX then it should draw on top of it.  I could never get
the assignment to work, but even if I could
how can I be certain that the device context for the OCX remains valid?

Please help.

Thanks,

Jim Wheeler

james_whee...@compuserve.com