Paint.cpp
上传用户:apjinmao
上传日期:2007-01-02
资源大小:96k
文件大小:1k
源码类别:

PropertySheet

开发平台:

Visual C++

  1. // Paint.cpp: helper functions used when drawing bitmaps on the dialogs
  2. //
  3. // Copyright (c) 1985-1995, Microsoft Corporation. All rights reserved.
  4. //
  5. #include "stdafx.h"
  6. #include "Propsheet Wizard.h"
  7. #ifdef _PSEUDO_DEBUG
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. // Coordinates for yellow rectangle in dialog-box units
  12. #define RIGHT_YELLOW_DLGU 124
  13. #define BOTTOM_YELLOW_DLGU 197
  14. // Draws a background of yellow on the left side of the dialog
  15. void PaintBackground (CDC &dc, CDialog *pDlg)
  16. {
  17. // Get the yellow brush
  18. CBitmap pattern;
  19. pattern.LoadBitmap (IDB_YELLOW_PATTERN);
  20. CBrush brush (&pattern);
  21. // Draw the yellow background
  22. CRect rect (0, 0, RIGHT_YELLOW_DLGU+1, BOTTOM_YELLOW_DLGU+1);
  23. pDlg->MapDialogRect (&rect);
  24. dc.DPtoLP (&rect);
  25. dc.FillRect (&rect, &brush);
  26. }
  27. // Draw the specified bitmap at the specified location
  28. void PaintBitmap (UINT nBmp, int x, int y, int nWidth, int nHeight,
  29. CDC &dc)
  30. {
  31. CDC mdc;
  32. if (!mdc.CreateCompatibleDC (&dc))
  33. return;
  34. CBitmap picture;
  35. // Load & select the bitmap into the device-context
  36. picture.LoadBitmap (nBmp);
  37. BITMAP bitmap;
  38. picture.GetObject (sizeof (BITMAP), &bitmap);
  39. CBitmap* pOldBitmap = mdc.SelectObject (&picture);
  40. ASSERT (nWidth == bitmap.bmWidth);
  41. ASSERT (nHeight == bitmap.bmHeight);
  42. // Draw the bitmap
  43. dc.BitBlt (x, y, nWidth, nHeight, &mdc, 0, 0, SRCCOPY);
  44. // Reselect the previous bitmap object
  45. mdc.SelectObject (pOldBitmap);
  46. }