HyperLink.h
上传用户:xiuanze55
上传日期:2013-06-16
资源大小:85k
文件大小:3k
源码类别:

其他数据库

开发平台:

Visual C++

  1. //////////////////////////////////////
  2. //类名:CHyperLink
  3. //功能:建立电子邮件和网址的超链连郊果
  4. //修改人:徐景周(jingzhou_xu@163.net)
  5. //组织:未来工作室(Future Studio)
  6. //日期:2000.10
  7. ///////////////////////////////////////
  8. #if !defined(AFX_HYPERLINK_H__D1625061_574B_11D1_ABBA_00A0243D1382__INCLUDED_)
  9. #define AFX_HYPERLINK_H__D1625061_574B_11D1_ABBA_00A0243D1382__INCLUDED_
  10. #if _MSC_VER >= 1000
  11. #pragma once
  12. #endif // _MSC_VER >= 1000
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CHyperLink window
  15. class CHyperLink : public CStatic
  16. {
  17. // Construction/destruction
  18. public:
  19.     CHyperLink();
  20.     virtual ~CHyperLink();
  21. // Attributes
  22. public:
  23. // Operations
  24. public:
  25.     void SetURL(CString strURL);
  26.     CString GetURL() const;
  27.     void SetColours(COLORREF crLinkColour, COLORREF crVisitedColour, 
  28.                     COLORREF crHoverColour = -1);
  29.     COLORREF GetLinkColour() const;
  30.     COLORREF GetVisitedColour() const;
  31.     COLORREF GetHoverColour() const;
  32.     void SetVisited(BOOL bVisited = TRUE);
  33.     BOOL GetVisited() const;
  34.     void SetLinkCursor(HCURSOR hCursor);
  35.     HCURSOR GetLinkCursor() const;
  36.     void SetUnderline(BOOL bUnderline = TRUE);
  37.     BOOL GetUnderline() const;
  38.     void SetAutoSize(BOOL bAutoSize = TRUE);
  39.     BOOL GetAutoSize() const;
  40. HINSTANCE GotoURL(LPCTSTR url, int showcmd);
  41. // Overrides
  42.     // ClassWizard generated virtual function overrides
  43.     //{{AFX_VIRTUAL(CHyperLink)
  44.     public:
  45.     virtual BOOL PreTranslateMessage(MSG* pMsg);
  46.     protected:
  47.     virtual void PreSubclassWindow();
  48.     //}}AFX_VIRTUAL
  49. // Implementation
  50. protected:
  51.     
  52.     void ReportError(int nError);
  53.     LONG GetRegKey(HKEY key, LPCTSTR subkey, LPTSTR retdata);
  54.     void PositionWindow();
  55.     void SetDefaultCursor();
  56. // Protected attributes
  57. protected:
  58.     COLORREF m_crLinkColour, m_crVisitedColour;     // Hyperlink colours
  59.     COLORREF m_crHoverColour;                       // Hover colour
  60.     BOOL     m_bOverControl;                        // cursor over control?
  61.     BOOL     m_bVisited;                            // Has it been visited?
  62.     BOOL     m_bUnderline;                          // underline hyperlink?
  63.     BOOL     m_bAdjustToFit;                        // Adjust window size to fit text?
  64.     CString  m_strURL;                              // hyperlink URL
  65.     CFont    m_Font;                                // Underline font if necessary
  66.     HCURSOR  m_hLinkCursor;                         // Cursor for hyperlink
  67.     CToolTipCtrl m_ToolTip;                         // The tooltip
  68.     // Generated message map functions
  69. protected:
  70.     //{{AFX_MSG(CHyperLink)
  71.     afx_msg HBRUSH CtlColor(CDC* pDC, UINT nCtlColor);
  72.     afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
  73.     afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  74.     //}}AFX_MSG
  75.     afx_msg void OnClicked();
  76.     DECLARE_MESSAGE_MAP()
  77. };
  78. /////////////////////////////////////////////////////////////////////////////
  79. //{{AFX_INSERT_LOCATION}}
  80. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  81. #endif // !defined(AFX_HYPERLINK_H__D1625061_574B_11D1_ABBA_00A0243D1382__INCLUDED_)