Placing A Bitmap In The PropertySheet Button Area
To do this is quite easy.
2. Override the WM_PAINT message by creating an OnPaint() member function for CMyPropertySheet, and paste the follwing code into it.
CBitmap bmp, *poldbmp; CDC memdc; CRect rect; //Load the bitmap resource bmp.LoadBitmap(IDB_BITMAPLOGO); //Create a compatible memory DC memdc.CreateCompatibleDC(&dc); //Select the bitmap into the DC poldbmp = memdc.SelectObject(&bmp);//bmp //Get size of PropertySheet GetClientRect(&rect); //Copy (BitBlt) bitmap from memory DC to screen DC dc.BitBlt(left, rect.bottom - lower, w, h, &memdc, 0, 0, SRCCOPY); memdc.SelectObject(poldbmp);
The dc.BitBlt places a w pixel wide by h pixel high image left pixels away from the left hand edge, and lower pixels away from the bottom of the PropertySheet. Change these values as you see fit.
3. #include "MyPropertSheet.h" in the calling dialog that you wish to use the new property page in.
4. Add PropertyPages to the PropertySheet and call it, e.g.....
CMyPropertySheet sheet("Personnel Details");
CPerFildlg perfildlgPage;
CAddDetdlg adddetdlgPage;
CDelDetdlg deldetdlgPage;
sheet.AddPage(&perfildlgPage);
sheet.AddPage(&adddetdlgPage);
sheet.AddPage(&deldetdlgPage);
sheet.DoModal();
More advanced code for drawing bitmaps / DIBs which also uses palettes may be found on this site.
Date Posted: 05/04/98
Comments
Overriding the OK and Cancel Buttons
Posted by Legacy on 11/02/2000 12:00amOriginally posted by: David Ishmael
Is there a way to remove the focus of the OK and Cancel buttons?
ReplyAny way to put the bitmap on the default buttons?
Posted by Legacy on 04/25/2000 12:00amOriginally posted by: K Parthasarathy
Hi,
Is there any way to put the bitmap images to the default buttons like OK , Next , Cancel and others given by the propertysheet
ReplyAny way to put the Bitmap in the main Property Page area?
Posted by Legacy on 11/24/1999 12:00amOriginally posted by: Chris Fasulo
I am looking for a way to put Bitmaps in the main area of the Property Page background. So that the bitmap image is the background for the property page.
ReplyCListCtrl::GetHeaderCtrl()
Posted by Legacy on 05/14/1999 12:00amOriginally posted by: Sam Hobbs
CListCtrl::GetHeaderCtrl() seems to be new for VC6. I cannot find it in VC5 documentation or MFC source browser dtat, but I find it in the VC6 documentation in MSDN. Has anyone looked to see if it uses one of the techniques dexcribed here?
ReplyLittle modification
Posted by Legacy on 12/03/1998 12:00amOriginally posted by: Catalin Hatmanu