DBCTL.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:3k
源码类别:

Windows编程

开发平台:

Visual C++

  1. // dbctl.h : Declaration of the CDbCtrl OLE control class.
  2. //
  3. // This is a part of the Microsoft Foundation Classes C++ library.
  4. // Copyright (C) 1992-1998 Microsoft Corporation
  5. // All rights reserved.
  6. //
  7. // This source code is only intended as a supplement to the
  8. // Microsoft Foundation Classes Reference and related
  9. // electronic documentation provided with the library.
  10. // See these sources for detailed information regarding the
  11. // Microsoft Foundation Classes product.
  12. /////////////////////////////////////////////////////////////////////////////
  13. // CGenericSet recordset
  14. class CGenericSet : public CRecordset
  15. {
  16. public:
  17. CGenericSet(CDatabase* pDatabase, CString* pstrColumnName);
  18. // Field/Param Data
  19. //{{AFX_FIELD(CGenericSet, CRecordset)
  20. CString m_strCurrentValue;
  21. //}}AFX_FIELD
  22. // Implementation
  23. protected:
  24. CString m_strColumnName;
  25. virtual CString GetDefaultSQL();
  26. virtual void DoFieldExchange(CFieldExchange* pFX);
  27. DECLARE_DYNAMIC(CGenericSet)
  28. };
  29. /////////////////////////////////////////////////////////////////////////////
  30. // CDbCtrl : See dbctl.cpp for implementation.
  31. class CDbCtrl : public COleControl
  32. {
  33. DECLARE_DYNCREATE(CDbCtrl)
  34. // Constructor
  35. public:
  36. CDbCtrl();
  37. // Overrides
  38. // Drawing function
  39. virtual void OnDraw(
  40. CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
  41. // Persistence
  42. virtual void DoPropExchange(CPropExchange* pPX);
  43. // Reset control state
  44. virtual void OnResetState();
  45. // Implementation
  46. protected:
  47. ~CDbCtrl();
  48. CDatabase   m_cDatabase;
  49. CGenericSet* m_pRecordSet;
  50. BOOL    m_bConnected;
  51. DECLARE_OLECREATE_EX(CDbCtrl)   // Class factory and guid
  52. DECLARE_OLETYPELIB(CDbCtrl)     // GetTypeInfo
  53. DECLARE_OLECTLTYPE(CDbCtrl)
  54. DECLARE_PROPPAGEIDS(CDbCtrl)        // Property page IDs
  55. // Subclassed control support
  56. BOOL PreCreateWindow(CREATESTRUCT& cs);
  57. WNDPROC* GetSuperWndProcAddr(void);
  58. LRESULT OnOcmCommand(WPARAM wParam, LPARAM lParam);
  59. // Message maps
  60. //{{AFX_MSG(CDbCtrl)
  61. // NOTE - ClassWizard will add and remove member functions here.
  62. //    DO NOT EDIT what you see in these blocks of generated code !
  63. //}}AFX_MSG
  64. DECLARE_MESSAGE_MAP()
  65. // Dispatch maps
  66. //{{AFX_DISPATCH(CDbCtrl)
  67. CString m_query;
  68. afx_msg void OnQueryChanged();
  69. CString m_dataSource;
  70. afx_msg void OnDataSourceChanged();
  71. CString m_tableName;
  72. afx_msg void OnTableNameChanged();
  73. CString m_columnName;
  74. afx_msg void OnColumnNameChanged();
  75. CString m_userName;
  76. afx_msg void OnUserNameChanged();
  77. CString m_password;
  78. afx_msg void OnPasswordChanged();
  79. afx_msg void ReQuery();
  80. //}}AFX_DISPATCH
  81. DECLARE_DISPATCH_MAP()
  82. afx_msg void AboutBox();
  83. // Event maps
  84. //{{AFX_EVENT(CDbCtrl)
  85. //}}AFX_EVENT
  86. DECLARE_EVENT_MAP()
  87. // Dispatch and event IDs
  88. public:
  89. enum {
  90. //{{AFX_DISP_ID(CDbCtrl)
  91. dispidDataSource = 2L,
  92. dispidTableName = 3L,
  93. dispidColumnName = 4L,
  94. dispidUserName = 5L,
  95. dispidPassword = 6L,
  96. dispidQuery = 1L,
  97. dispidReQuery = 7L,
  98. //}}AFX_DISP_ID
  99. };
  100. };