SinusFrame.h
上传用户:guanxf518
上传日期:2007-01-02
资源大小:21k
文件大小:2k
源码类别:

Static控件

开发平台:

Visual C++

  1. #ifndef AFX_SINUSFRAME_H__41258CBF_8436_11D1_9C04_084D65000000__INCLUDED_
  2. #define AFX_SINUSFRAME_H__41258CBF_8436_11D1_9C04_084D65000000__INCLUDED_
  3. // SinusFrame.h : Header-Datei
  4. //
  5. /////////////////////////////////////////////////////////////////////////////
  6. // Fenster CSinusFrame 
  7. class CSinusFrame : public CStatic
  8. {
  9. // Konstruktion
  10. public:
  11. CSinusFrame();
  12. // Attribute
  13. public:
  14. // Operationen
  15. public:
  16. // 躡erschreibungen
  17. // Vom Klassen-Assistenten generierte virtuelle Funktions黚erschreibungen
  18. //{{AFX_VIRTUAL(CSinusFrame)
  19. //}}AFX_VIRTUAL
  20. // Implementierung
  21. public:
  22. void SetSinusSpeed(int n);
  23. void SetFont(CFont* pFont);
  24. void Stop();
  25. void Start();
  26. void SetText(LPCTSTR lpszText);
  27. virtual ~CSinusFrame();
  28. // Generierte Nachrichtenzuordnungsfunktionen
  29. protected:
  30. //{{AFX_MSG(CSinusFrame)
  31. afx_msg void OnFontChange();
  32. afx_msg void OnSize(UINT nType, int cx, int cy);
  33. afx_msg void OnClose();
  34. //}}AFX_MSG
  35. DECLARE_MESSAGE_MAP()
  36. private:
  37. void Cleanup();
  38. void DoCharBlit();
  39. void Scroll();
  40. TCHAR GetNextChar();
  41. void DoSinScroll();
  42. int GetNextSinusOffset();
  43. double GetNextSinValue();
  44. void Initialize();
  45. int m_nSinusSpeed;
  46. int m_nSinusOffset;
  47. int m_nSinusPos;
  48. int m_nCharWidth;
  49. int m_nCharHeight;
  50. int m_nPixLeft;
  51. int m_nTextPos;
  52. double m_dSinusTable[720];
  53. UINT m_nTimer;
  54. static void CALLBACK AFX_EXPORT TimerProc(HWND hWnd, UINT nMsg, UINT nIDEvent, DWORD dwTime);
  55. bool m_bRunning;
  56. bool m_bInitialized;
  57. CFont* m_pFont;
  58. CBitmap* m_pBMSinus;
  59. CBitmap* m_pBMScroll;
  60. CDC* m_pDCScroll;
  61. CDC* m_pDCSinus;
  62. CRect m_rcScroll;
  63. CRect m_rcClient;
  64. CString m_strText;
  65. };
  66. /////////////////////////////////////////////////////////////////////////////
  67. //{{AFX_INSERT_LOCATION}}
  68. // Microsoft Developer Studio f黦t zus鋞zliche Deklarationen unmittelbar vor der vorhergehenden Zeile ein.
  69. #endif // AFX_SINUSFRAME_H__41258CBF_8436_11D1_9C04_084D65000000__INCLUDED_