⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ncomboctl.h

📁 VisualC++实践与提高-ActiveX篇源码
💻 H
字号:
/************************************
  REVISION LOG ENTRY
  Revision By: Mihai Filimon
  Revised on 12/11/98 3:19:40 PM
  Comments: NComboCtl.h : Declaration of the CNComboCtrl ActiveX Control class.
			CNComboCtrl : See NComboCtl.cpp for implementation.
 ************************************/


#if !defined(AFX_NCOMBOCTL_H__DE201796_9000_11D2_8726_0040055C08D9__INCLUDED_)
#define AFX_NCOMBOCTL_H__DE201796_9000_11D2_8726_0040055C08D9__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "NWindow.h"

class CNComboCtrl : public COleControl
{
	friend class CNWindow;
	friend class CNListCtrl;
	friend class CNHeader;
	DECLARE_DYNCREATE(CNComboCtrl)

// Constructor
public:
	CNComboCtrl();

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CNComboCtrl)
	public:
	virtual void OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
	virtual void DoPropExchange(CPropExchange* pPX);
	virtual void OnResetState();
	virtual BOOL PreTranslateMessage(MSG* pMsg);
	protected:
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
	//}}AFX_VIRTUAL

// Implementation
protected:
	BOOL m_bCreated;
	CNWindow m_nWindow;
	~CNComboCtrl();

	BEGIN_OLEFACTORY(CNComboCtrl)        // Class factory and guid
		virtual BOOL VerifyUserLicense();
		virtual BOOL GetLicenseKey(DWORD, BSTR FAR*);
	END_OLEFACTORY(CNComboCtrl)

	DECLARE_OLETYPELIB(CNComboCtrl)      // GetTypeInfo
	DECLARE_PROPPAGEIDS(CNComboCtrl)     // Property page IDs
	DECLARE_OLECTLTYPE(CNComboCtrl)		// Type name and misc status

// Message maps
	//{{AFX_MSG(CNComboCtrl)
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnSize(UINT nType, int cx, int cy);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()

// Dispatch maps
	//{{AFX_DISPATCH(CNComboCtrl)
	long m_nDropDownHeight;
	afx_msg void OnDropDownHeightChanged();
	afx_msg long GetColumnKey();
	afx_msg void SetColumnKey(long nNewValue);
	afx_msg BOOL GetResizing();
	afx_msg void SetResizing(BOOL bNewValue);
	afx_msg long GetSelectItem();
	afx_msg void SetSelectItem(long nNewValue);
	afx_msg long InsertColumn(long nColumn, LPCTSTR sColumnName, long nWidth, long nJustify, BOOL bEnable, BOOL bVisible);
	afx_msg BOOL DeleteColumn(long nColumn);
	afx_msg long GetColumnCount();
	afx_msg long InsertItem(long nItem, LPCTSTR sItem);
	afx_msg BOOL SetItemText(long nItem, long nSubItem, LPCTSTR sItem);
	afx_msg BOOL SetItemData(long nItem, long wData);
	afx_msg long GetItemCount();
	afx_msg BSTR GetItemText(long nItem, long nSubItem);
	afx_msg long GetItemData(long nItem);
	afx_msg BSTR GetColumnName(long nColumn);
	afx_msg long GetColumnWidth(long nColumn);
	afx_msg void SetColumnWidth(long nColumn, long nNewValue);
	afx_msg BOOL GetColumnVisible(long nColumn);
	afx_msg void SetColumnVisible(long nColumn, BOOL bNewValue);
	afx_msg BOOL GetColumnEnable(long nColumn);
	afx_msg void SetColumnEnable(long nColumn, BOOL bNewValue);
	//}}AFX_DISPATCH
	DECLARE_DISPATCH_MAP()

	afx_msg void AboutBox();

// Event maps
	//{{AFX_EVENT(CNComboCtrl)
	void FireChangingItem(long nItem)
		{FireEvent(eventidChangingItem,EVENT_PARAM(VTS_I4), nItem);}
	void FireChangedItem(long nItem)
		{FireEvent(eventidChangedItem,EVENT_PARAM(VTS_I4), nItem);}
	void FireChangeColumnKey(long nColumn)
		{FireEvent(eventidChangeColumnKey,EVENT_PARAM(VTS_I4), nColumn);}
	void FireChangeColumnContent(short nColumn, LPCTSTR sColumnContent, long nType)
		{FireEvent(eventidChangeColumnContent,EVENT_PARAM(VTS_I2  VTS_BSTR VTS_I4), nColumn, sColumnContent, nType);}
	//}}AFX_EVENT
	DECLARE_EVENT_MAP()

// Dispatch and event IDs
public:
	enum {
	//{{AFX_DISP_ID(CNComboCtrl)
	dispidDropDownHeight = 1L,
	dispidColumnKey = 2L,
	dispidResizing = 3L,
	dispidSelectItem = 4L,
	dispidInsertColumn = 5L,
	dispidDeleteColumn = 6L,
	dispidGetColumnCount = 7L,
	dispidInsertItem = 8L,
	dispidSetItemText = 9L,
	dispidSetItemData = 10L,
	dispidGetItemCount = 11L,
	dispidGetItemText = 12L,
	dispidGetItemData = 13L,
	dispidGetColumnName = 14L,
	dispidColumnWidth = 15L,
	dispidColumnVisible = 16L,
	dispidColumnEnable = 17L,
	eventidChangingItem = 1L,
	eventidChangedItem = 2L,
	eventidChangeColumnKey = 3L,
	eventidChangeColumnContent = 4L,
	//}}AFX_DISP_ID
	};
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_NCOMBOCTL_H__DE201796_9000_11D2_8726_0040055C08D9__INCLUDED)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -