MyBitmap.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. // MyBitmap.h: interface for the CMyBitmap class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_MYBITMAP_H__73EF928E_90A7_461A_B879_7E3007684679__INCLUDED_)
  5. #define AFX_MYBITMAP_H__73EF928E_90A7_461A_B879_7E3007684679__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. //#include "include\Picture.h"
  10. #include "EnBitmap.h"
  11. class CMyBitmap : public CEnBitmap
  12. {
  13. public:
  14. BOOL Draw( CDC *pDC, LPRECT r);
  15. //draw sub bmp to special point
  16. BOOL Draw( CDC *pDC, int x, int y, LPRECT sr );
  17. BOOL Draw( CDC *pDC, int x, int y, LPRECT sr, COLORREF colTrans, BOOL bTrans );
  18. BOOL StretchDraw(CDC *pDC, LPRECT tr, LPRECT sr );
  19. BOOL StretchDraw(CDC *pDC, LPRECT r);
  20. int Width()
  21. {
  22. return GetWidth();
  23. }
  24. int GetWidth()
  25. {
  26. BITMAP bm;
  27. memset( &bm, 0, sizeof(bm) );
  28. GetBitmap(&bm);
  29. return bm.bmWidth;
  30. }
  31. int Height()
  32. {
  33. return GetHeight();
  34. }
  35. int GetHeight()
  36. {
  37. BITMAP bm;
  38. memset( &bm, 0, sizeof(bm) );
  39. GetBitmap(&bm);
  40. return bm.bmHeight;
  41. }
  42. CMyBitmap();
  43. virtual ~CMyBitmap();
  44. BOOL Attach( HBITMAP hbmp )
  45. {
  46. return CBitmap::Attach( hbmp );
  47. }
  48. /*
  49. HBITMAP hBitmap = NULL;
  50. hBitmap = (HBITMAP)LoadImage(NULL, szFilename, IMAGE_BITMAP, 0, 0,
  51. LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
  52. */
  53. BOOL LoadBitmap(LPCTSTR szFilename)
  54. {
  55. ASSERT(szFilename);
  56. DeleteObject();
  57. /*
  58. CClientDC dc(NULL);
  59. CPicture pic;
  60. if ( !pic.LoadPicture( szFilename ) )
  61. return FALSE;
  62. HBITMAP hBitmap = pic.CreateDDB(&dc);
  63. pic.DeleteObject();
  64. return Attach(hBitmap);
  65. */
  66. return LoadImage( szFilename );
  67. }
  68. BOOL DrawTransparent(CDC * pDC, int x, int y, COLORREF crColour);
  69. HRGN CreateRgnFromFile( COLORREF color );
  70. };
  71. #endif // !defined(AFX_MYBITMAP_H__73EF928E_90A7_461A_B879_7E3007684679__INCLUDED_)