BitmapDialog.h
上传用户:cxh888fhc
上传日期:2017-07-08
资源大小:240k
文件大小:3k
源码类别:

钩子与API截获

开发平台:

Visual C++

  1. #if !defined(AFX_BITMAPDIALOG_H__A76F9E74_DF43_11D4_AE27_4854E828E6FD__INCLUDED_)
  2. #define AFX_BITMAPDIALOG_H__A76F9E74_DF43_11D4_AE27_4854E828E6FD__INCLUDED_
  3. #if _MSC_VER >= 1000
  4. #pragma once
  5. #endif // _MSC_VER >= 1000
  6. // BitmapDialog.h : header file
  7. //
  8. /////////////////////////////////////////////////////////////////////////////
  9. // CBitmapDialog dialog
  10. class CBitmapDialog : public CDialog
  11. {
  12. // Construction
  13. public:
  14. // Common constructor
  15. void Constructor (LPCTSTR lpszResourceName, UINT nIDResource,
  16. LPCTSTR lpszFilename, CBitmap *pBitmap);
  17. CBitmapDialog (LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL,
  18. LPCTSTR lpszResourceName = NULL, UINT nIDResource = 0,
  19. LPCTSTR lpszFilename = NULL, CBitmap *pBitmap = NULL);
  20. CBitmapDialog (UINT nIDTemplate, CWnd* pParentWnd = NULL,
  21. LPCTSTR lpszResourceName = NULL, UINT nIDResource = 0,
  22. LPCTSTR lpszFilename = NULL, CBitmap *pBitmap = NULL);
  23. CBitmapDialog (LPCTSTR lpszResourceName = NULL, UINT nIDResource = 0,
  24. LPCTSTR lpszFilename = NULL, CBitmap *pBitmap = NULL);
  25. // Destructor (just release the bitmap)
  26. ~CBitmapDialog () { ReleaseBitmap (); }
  27. // Bitmap
  28. BOOL LoadBitmap (LPCTSTR lpszResourceName,
  29. LPCTSTR lpszFilename); // Load from resource or file
  30. BOOL LoadBitmap (UINT nIDResource); // Load from resource
  31. BOOL CopyBitmapFrom (CBitmap *pBitmap); // Copy of user defined
  32. void SetBitmap (CBitmap *pBitmap); // User defined
  33. void ReleaseBitmap ();
  34. CBitmap *GetBitmap () { return m_bmBitmap; }
  35. // Transparency
  36. void SetTransparent (BOOL bTransparent);
  37. BOOL GetTransparent () { return m_bTransparent; }
  38. void SetTransColor (COLORREF col);
  39. COLORREF GetTransColor () { return m_colTrans; }
  40. // Static control transparency
  41. void SetStaticTransparent (BOOL bTransparent) { m_bStaticTransparent = bTransparent; }
  42. BOOL GetStaticTransparent () { return m_bStaticTransparent; }
  43. // Clicking anywhere moves
  44.     void SetClickAnywhereMove (BOOL bMove) { m_bClickAnywhereMove = bMove; }
  45. BOOL GetClickAnywhereMove () { return m_bClickAnywhereMove; }
  46. // Dialog Data
  47. //{{AFX_DATA(CBitmapDialog)
  48. // NOTE: the ClassWizard will add data members here
  49. //}}AFX_DATA
  50. // Overrides
  51. // ClassWizard generated virtual function overrides
  52. //{{AFX_VIRTUAL(CBitmapDialog)
  53. protected:
  54. //}}AFX_VIRTUAL
  55. // Implementation
  56. protected:
  57. void MakeWindowRgn ();
  58. // Transparency
  59. BOOL m_bTransparent;
  60. BOOL m_bStaticTransparent;
  61. HBRUSH m_brushHollow;
  62. COLORREF m_colTrans;
  63. // Clicking anywhere moves
  64. BOOL m_bClickAnywhereMove;
  65. // Bitmap and its DC
  66. BOOL m_bBitmapCreated, m_bBitmapExists;
  67. CBitmap *m_bmBitmap;
  68. // Generated message map functions
  69. //{{AFX_MSG(CBitmapDialog)
  70. afx_msg BOOL OnEraseBkgnd (CDC *pDC);
  71. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  72. afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
  73. //}}AFX_MSG
  74. DECLARE_MESSAGE_MAP()
  75. };
  76. //{{AFX_INSERT_LOCATION}}
  77. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  78. #endif // !defined(AFX_BITMAPDIALOG_H__A76F9E74_DF43_11D4_AE27_4854E828E6FD__INCLUDED_)