HMXShapedDialog.h
上传用户:yinguanfa
上传日期:2022-02-19
资源大小:400k
文件大小:3k
源码类别:

ListView/ListBox

开发平台:

Visual C++

  1. #if !defined(AFX_HMXSHAPEDDIALOG_H__FAC576C4_CA7F_11D5_BD28_0060520365FB__INCLUDED_)
  2. #define AFX_HMXSHAPEDDIALOG_H__FAC576C4_CA7F_11D5_BD28_0060520365FB__INCLUDED_
  3. #if _MSC_VER >= 1000
  4. #pragma once
  5. #endif // _MSC_VER >= 1000
  6. // HMXShapedDialog.h : header file
  7. //
  8. #include "dib256.h"
  9. /////////////////////////////////////////////////////////////////////////////
  10. // CHMXShapedDialog dialog
  11. class CHMXShapedDialog : public CDialog
  12. {
  13. // Construction
  14. public:
  15. CHMXShapedDialog(UINT uResourceID, CWnd* pParent = NULL);
  16. CHMXShapedDialog(LPCTSTR pszResourceID, CWnd* pParent = NULL);
  17. CHMXShapedDialog();
  18. // Attributes
  19. public:
  20. bool SetRegionFile(const CString& sFileRgn, COLORREF clrTransp = RGB( 0, 0, 0) );
  21. // Dialog Data
  22. //{{AFX_DATA(CHMXShapedDialog)
  23. // NOTE: the ClassWizard will add data members here
  24. //}}AFX_DATA
  25. // Overrides
  26. // ClassWizard generated virtual function overrides
  27. //{{AFX_VIRTUAL(CHMXShapedDialog)
  28. protected:
  29. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  30. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  31. //}}AFX_VIRTUAL
  32. // Implementation
  33. protected:
  34. HRGN BitmapRegion(HBITMAP hBitmap,COLORREF clsTransp=RGB(0,0,0),bool bTransp=true);
  35. CString m_sFileRgn; // this string will keep the BMP filename;
  36. HBITMAP m_hBmp; // This is the handle to the bitmap which stores the picture
  37. HBITMAP m_hPrevBmp; // This handle is to store the previous bitmap selected on
  38. // the memory context. It should normally be NULL, but it
  39. // doesn't harm anyone to take care of such little precautions!
  40. HDC m_hMemDC; // This is the handle to the memory context where we copy first
  41. // the bitmap. When its time to paint the background, we copy
  42. // the bitmap from the memory context to the device context!
  43. HRGN m_hRegion; // The clipping region that makes this cool effect!
  44. BITMAP m_bmInfo; // This bitmap hepls us to know the size of the loaded bitmap!
  45. COLORREF m_clrTransp; // This is the trasparent color for Region
  46. // Generated message map functions
  47. //{{AFX_MSG(CHMXShapedDialog)
  48. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  49. afx_msg void OnPaint();
  50. afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  51. afx_msg void OnDestroy();
  52. //}}AFX_MSG
  53. DECLARE_MESSAGE_MAP()
  54. private:
  55. void CommonConstruct();
  56. };
  57. //{{AFX_INSERT_LOCATION}}
  58. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  59. #endif // !defined(AFX_HMXSHAPEDDIALOG_H__FAC576C4_CA7F_11D5_BD28_0060520365FB__INCLUDED_)