MFC Transparent CDialog Demo

Environment: Visual C++ V6.0

This dialog is derived from CDialog. A bitmap is loaded from a file and a region created based on a transparent colour. The bitmap is then used to paint the dialog. This demo also demonstrates dragging the dialog by clicking anywhere on a visible portion of the dialog, timer events, and a button on the transparent dialog.

It is perfect to be used as a splash screen or similar application or as a skeleton application for non-rectangular windows that are shaped by a supplied bitmap.

Downloads

Download demo project - 87KB


Comments

  • Thanks!

    Posted by stahl on 08/04/2008 04:00pm

    Works great, exactly what i was looking for!

    Reply
  • Do add the important code in the page rather than ziping .

    Posted by jayender.vs on 11/24/2005 01:36am

    Please add the important codes in the displayed page rather than putting it into zip file. Many have the restriction in downloading the zip file.

    Reply
  • Extra code.

    Posted by Legacy on 12/17/2002 12:00am

    Originally posted by: John Wellbelove

    I was playing around with the code and background bitmaps and came up with this small addition. It adds the region of the 'close' button to the window region, making it always visible regardless of the bitmap transparency. You can make some wild dialogs with this, such as a group of controls that float on the desktop without any apparent (connected) dialog background.

    Add this after the bitmap region is created.

    CWnd *pWnd = GetDlgItem(IDC_CLOSE);
    CRect rect;
    pWnd->GetWindowRect(&rect);
    ScreenToClient(&rect);
    crRgnTmp.CreateRectRgn(rect.left, rect.top, rect.right, rect.bottom);
    crRgn.CombineRgn(&crRgn, &crRgnTmp, RGN_OR);
    crRgnTmp.DeleteObject();

    Reply
  • Not working with Windows 98

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

    Originally posted by: Richard Adams

    For some reason the dialog controls are all offset on Windows 98? Ideas?

    Reply
  • Disappearing dialog

    Posted by Legacy on 12/10/2002 12:00am

    Originally posted by: John Wellbelove

    I found that sometimes, if you drag and drop the dialog lots of times, it may suddenly close for no apparent reason!

    System
    XP SP1
    VC++ 6.0 Standard.

    Reply
  • Not working

    Posted by Legacy on 12/09/2002 12:00am

    Originally posted by: gerlinden

    Your demo is not working. Where is the bitmap?
    .DoModal returns "Error Loading bitmap"

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

Top White Papers and Webcasts

  • Live Event Date: July 22, 2015 @ 2:00 p.m. ET / 11:00 a.m. PT Today's increasingly mobile workforce creates new challenges for organizations that rely heavily on collaboration. Businesses need to be both secure and collaborative, and they can't sacrifice one over the other. The plethora of devices and clouds used by mobile employees only complicates these challenges. Attend this eSeminar and learn how your business can enable mobile access to files from anywhere while it helps to maintain information …

  • By now you've likely heard of Agile development and building products in small incremental pieces, so you can get real feedback along the way. In fact, you may even be considering using Agile on your next project. But where do you start? Agile can take a lot of forms, such as Scrum or Kanban. Each form has advantages and disadvantages, but both will help your team get the right feedback they need to build great products. Read this white paper to find out which one is right for you.

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date