| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 | 
							- #if !defined(AFX_LABEL_H__A4EABEC5_2E8C_11D1_B79F_00805F9ECE10__INCLUDED_)
 
- #define AFX_LABEL_H__A4EABEC5_2E8C_11D1_B79F_00805F9ECE10__INCLUDED_
 
- #if _MSC_VER >= 1000
 
- #pragma once
 
- #endif // _MSC_VER >= 1000
 
- // Label.h : header file
 
- //
 
- #define	NM_LINKCLICK	WM_APP + 0x200
 
- /////////////////////////////////////////////////////////////////////////////
 
- // CLabel window
 
- class CLabel : public CStatic
 
- {
 
- 	// Construction
 
- public:
 
- 	enum LinkStyle { LinkNone, HyperLink, MailLink };
 
- 	enum FlashType {None, Text, Background };
 
- 	enum Type3D { Raised, Sunken};
 
- 	enum BackFillMode { Normal, Gradient };
 
- 	CLabel();
 
- 	virtual CLabel& SetBkColor(COLORREF crBkgnd, COLORREF crBkgndHigh = 0, BackFillMode mode = Normal);
 
- 	virtual CLabel& SetTextColor(COLORREF crText);
 
- 	virtual CLabel& SetText(const CString& strText);
 
- 	virtual CLabel& SetFontBold(BOOL bBold = TRUE);
 
- 	virtual CLabel& SetFontName(const CString& strFont, BYTE byCharSet = ANSI_CHARSET);
 
- 	virtual CLabel& SetFontUnderline(BOOL bSet = TRUE);
 
- 	virtual CLabel& SetFontItalic(BOOL bSet = TRUE);
 
- 	virtual CLabel& SetFontSize(int nSize);
 
- 	virtual CLabel& SetSunken(BOOL bSet );
 
- 	virtual CLabel& SetBorder(BOOL bSet = TRUE);
 
- 	virtual CLabel& SetTransparent(BOOL bSet);
 
- 	virtual CLabel& FlashText(BOOL bActivate);
 
- 	virtual CLabel& FlashBackground(BOOL bActivate);
 
- 	virtual CLabel& SetLink(BOOL bLink,BOOL bNotifyParent);
 
- 	virtual CLabel& SetLinkCursor(HCURSOR hCursor);
 
- 	virtual CLabel& SetFont3D(BOOL bSet,Type3D type=Raised);
 
- 	virtual CLabel& SetRotationAngle(UINT nAngle,BOOL bRotation);
 
- 	virtual CLabel& SetText3DHiliteColor(COLORREF cr3DHiliteColor);
 
- 	virtual CLabel& SetFont(LOGFONT lf);
 
- 	virtual CLabel& SetMailLink(BOOL bEnable, BOOL bNotifyParent);
 
- 	virtual CLabel& SetHyperLink(const CString& sLink);
 
- 	// Attributes
 
- public:
 
- protected:
 
- 	void UpdateSurface();
 
- 	void ReconstructFont();
 
- 	void DrawGradientFill(CDC* pDC, CRect* pRect, COLORREF crStart, COLORREF crEnd, int nSegments);
 
- 	COLORREF		m_crText;
 
- 	COLORREF		m_cr3DHiliteColor;
 
- 	HBRUSH			m_hwndBrush;
 
- 	HBRUSH			m_hBackBrush;
 
- 	LOGFONT			m_lf;
 
- 	CFont			m_font;
 
- 	BOOL			m_bState;
 
- 	BOOL			m_bTimer;
 
- 	LinkStyle		m_Link;
 
- 	BOOL			m_bTransparent;
 
- 	BOOL			m_bFont3d;
 
- 	BOOL			m_bToolTips;
 
- 	BOOL			m_bNotifyParent;
 
- 	BOOL			m_bRotation;
 
- 	FlashType		m_Type;
 
- 	HCURSOR			m_hCursor;
 
- 	Type3D			m_3dType;
 
- 	BackFillMode	m_fillmode;
 
- 	COLORREF		m_crHiColor;
 
- 	COLORREF		m_crLoColor;
 
- 	CString			m_sLink;
 
- 	CString			m_strText;
 
- 	CDC* m_pMemDC;
 
- 	//CDC* pDCMem;
 
- 	// Operations
 
- public:
 
- 	// Overrides
 
- 	// ClassWizard generated virtual function overrides
 
- 	//{{AFX_VIRTUAL(CLabel)
 
- protected:
 
- 	virtual void PreSubclassWindow();
 
- 	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
 
- 	//}}AFX_VIRTUAL
 
- 	// Implementation
 
- public:
 
- 	virtual ~CLabel();
 
- 	// Generated message map functions
 
- protected:
 
- 	//{{AFX_MSG(CLabel)
 
- 	afx_msg void OnTimer(UINT nIDEvent);
 
- 	afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
 
- 	afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
 
- 	afx_msg void OnSysColorChange();
 
- 	afx_msg void OnPaint();
 
- 	afx_msg BOOL OnEraseBkgnd(CDC* pDC);
 
- 	//}}AFX_MSG
 
- 	DECLARE_MESSAGE_MAP()
 
- public:
 
- 	//tc:这就是新添加的ON_WM_CTLCOLOR_REFLECT()消息的响应函数
 
- 	afx_msg HBRUSH CtlColor(CDC* /*pDC*/, UINT /*nCtlColor*/);
 
- };
 
- /////////////////////////////////////////////////////////////////////////////
 
- //{{AFX_INSERT_LOCATION}}
 
- // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
 
- #endif // !defined(AFX_LABEL_H__A4EABEC5_2E8C_11D1_B79F_00805F9ECE10__INCLUDED_)
 
 
  |