OnscreenKeyboardDlg.h
上传用户:qzzxgm
上传日期:2009-12-14
资源大小:1882k
文件大小:3k
源码类别:

书籍源码

开发平台:

Visual C++

  1. // FocusTestDlg.h : header file
  2. //
  3. #if !defined(AFX_FOCUSTESTDLG_H__EFE558FB_FB84_11D3_8D1D_00C0F0405B24__INCLUDED_)
  4. #define AFX_FOCUSTESTDLG_H__EFE558FB_FB84_11D3_8D1D_00C0F0405B24__INCLUDED_
  5. #if _MSC_VER >= 1000
  6. #pragma once
  7. #endif // _MSC_VER >= 1000
  8. /////////////////////////////////////////////////////////////////////////////
  9. // COnscreenKeyboardDlg dialog
  10. #include "AfxTempl.h"
  11. //键结构
  12. struct KEYDEF
  13. {
  14. char cNormal; //键值
  15. char cShifted; //系统键值
  16. int cWidth; //键宽
  17. };
  18. class COnscreenKeyboardDlg : public CDialog
  19. {
  20. // Construction
  21. public:
  22. int pKeyWidth; //键宽
  23. int pKeyHeight; //键高
  24. CTypedPtrList<CPtrList, KEYDEF*> cKeys; //保存所有键
  25. int cCurrentKeyState; //描述当前键的状态
  26. HWND gFocus; //系统当前激活的窗口句柄
  27. void AddKey(
  28. char pNormal,
  29. char pShifted,
  30. int pWidth);
  31. void CalcWidthHeight();
  32. void DrawKey(CDC * dc, CRect & rc, KEYDEF * key, BOOL cHilight=FALSE);
  33. void SendKey(KEYDEF * key);
  34. void ReleaseFocus();
  35. int DescribeKeyState();
  36. void DrawKeyboard();
  37. COnscreenKeyboardDlg(CWnd* pParent = NULL); // standard constructor
  38. // CSystemTray cSystray;
  39. // Dialog Data
  40. //{{AFX_DATA(COnscreenKeyboardDlg)
  41. enum { IDD = IDD_ONSCREENKEYBOARD_DIALOG };
  42. // NOTE: the ClassWizard will add data members here
  43. //}}AFX_DATA
  44. // ClassWizard generated virtual function overrides
  45. //{{AFX_VIRTUAL(COnscreenKeyboardDlg)
  46. public:
  47. virtual BOOL PreTranslateMessage(MSG* pMsg);
  48. protected:
  49. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  50. //}}AFX_VIRTUAL
  51. // Implementation
  52. protected:
  53. HICON m_hIcon;
  54. // Generated message map functions
  55. //{{AFX_MSG(COnscreenKeyboardDlg)
  56. virtual BOOL OnInitDialog();
  57. afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
  58. afx_msg void OnPaint();
  59. afx_msg HCURSOR OnQueryDragIcon();
  60. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  61. afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
  62. afx_msg void OnRButtonDblClk(UINT nFlags, CPoint point);
  63. afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
  64. afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
  65. afx_msg BOOL OnMouseWheel(UINT nFlags, short zDelta, CPoint pt);
  66. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  67. afx_msg void OnSize(UINT nType, int cx, int cy);
  68. virtual void OnOK();
  69. virtual void OnCancel();
  70. afx_msg void OnShowWindow(BOOL bShow, UINT nStatus);
  71. afx_msg void OnTimer(UINT nIDEvent);
  72. afx_msg void OnDestroy();
  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_FOCUSTESTDLG_H__EFE558FB_FB84_11D3_8D1D_00C0F0405B24__INCLUDED_)