Creating a Transparent Hole Region in Different Shapes on Any Window

Environment: Visual C++ 6.0 Windows 9x, Windows NT 4.0 and Windows 2000

With this class you can make transparant (full access through hole) region in different shape on the most type of windows. Basically it is only one significant function in the class. This is most a funny way to use region like ellipse, rectangle, roundrect, circles and polygon. But i am sure that some of you can find a way to use it, for example in a screen saver. If you find another way to use it, please let me know!

Links

MagicHole Homepage

Downloads

Download demo project - 74 Kb
Download a CDialog based screensaver demo project that use the CMagicHole class - 152 Kb
Download source - 4 Kb


Comments

  • :-)

    Posted by Legacy on 11/08/2002 12:00am

    Originally posted by: Vitaly Tomilov

    funny, but useless.

    Reply
  • How does it work in Button Windows

    Posted by Legacy on 11/05/2002 12:00am

    Originally posted by: Limou

    when I use the MagicHole class with the m_hDestWnd a button's hwnd, the first time, it does not appear to transparent. In your Dialog demo, I add a big button with id IDC_BUTTON1, and add the following statements:
    CMagicHole mag(GetDlgItem(IDC_BUTTON1)->GetSafeHwnd());
    mag.MakeHoleArea(CRect(4,4,100,60));
    the first time,the hole in the button is not transparent and we cannot see the word of "button1". why? even I add the UpdateWindow(), it does not take effect.

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Live Event Date: December 11, 2014 @ 1:00 p.m. ET / 10:00 a.m. PT Market pressures to move more quickly and develop innovative applications are forcing organizations to rethink how they develop and release applications. The combination of public clouds and physical back-end infrastructures are a means to get applications out faster. However, these hybrid solutions complicate DevOps adoption, with application delivery pipelines that span across complex hybrid cloud and non-cloud environments. Check out this …

  • On-demand Event Event Date: October 29, 2014 It's well understood how critical version control is for code. However, its importance to DevOps isn't always recognized. The 2014 DevOps Survey of Practice shows that one of the key predictors of DevOps success is putting all production environment artifacts into version control. In this webcast, Gene Kim discusses these survey findings and shares woeful tales of artifact management gone wrong! Gene also shares examples of how high-performing DevOps …

Most Popular Programming Stories

More for Developers

RSS Feeds