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

📄 ngdisableditemcombobox.h

📁 ResOrg 图形化管理Vc项目的资源ID的工具的源代码。 ResOrg - Manage and Renumber Resource Symbol IDs Introduction The
💻 H
字号:
#ifndef __NGDisabledItemComboBox_H__
#define __NGDisabledItemComboBox_H__

// NGDisabledItemComboBox.h : header file
//
//	This code is derived from that accompanying the article
//	"CComboBox with disabled items" published by Petr Novotny
//	(Petr.Novotny@antek.cz) on www.codeproject.com 
//
//	Modifications for compatibility with dropped lists by Anna-Jayne Metcalfe
//	(ajm@sonardyne.co.uk or code@annasplace.me.uk)
//

class CNGDisabledItemComboBox;

/////////////////////////////////////////////////////////////////////////////
// CListBoxInsideComboBox window

class CListBoxInsideComboBox : public CWnd
{
// Construction
public:
					CListBoxInsideComboBox(void);

// Attributes
protected:
					CNGDisabledItemComboBox* m_pParent;


// Operations
public:

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CListBoxInsideComboBox)
	//}}AFX_VIRTUAL

// Implementation
public:
	virtual ~CListBoxInsideComboBox(void);

			void	SetParent(CNGDisabledItemComboBox*);

	// Generated message map functions
protected:
	//{{AFX_MSG(CListBoxInsideComboBox)
	afx_msg void	OnLButtonUp(UINT nFlags, CPoint point);
	afx_msg	void	OnMouseMove(UINT nFlags, CPoint point);
	afx_msg void	OnLButtonDown(UINT nFlags, CPoint point);
	afx_msg void	OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// CNGDisabledItemComboBox window

class NGLIB_EXT_CLASS	CNGDisabledItemComboBox : public CComboBox
{
// Construction
public:
			CNGDisabledItemComboBox(void);


// Attributes
protected:
			CString					m_sSavedText;	// saves text between OnSelendok and OnRealSelEndOK calls
			CListBoxInsideComboBox	m_ListBox;

// Operations
public:

// Overrides
public:
	// default implementation uses LSB of item data; override to get other behaviour
	virtual BOOL	IsItemEnabled(UINT) const;

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CNGDisabledItemComboBox)
	public:
	virtual void	DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
	virtual void	MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct);
	protected:
	virtual void	PreSubclassWindow(void);
	virtual void	PostNcDestroy(void);
	//}}AFX_VIRTUAL

// Implementation
public:
	virtual	~CNGDisabledItemComboBox(void);

	// Generated message map functions
protected:
	//{{AFX_MSG(CNGDisabledItemComboBox)
	afx_msg int		OnCharToItem(UINT nChar, CListBox* pListBox, UINT nIndex);
	afx_msg void	OnSelendok(void);
	afx_msg void	OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
	//}}AFX_MSG

	afx_msg LRESULT	OnCtlColor(WPARAM,LPARAM lParam);
	afx_msg LRESULT	OnRealSelEndOK(WPARAM,LPARAM);

	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////
#endif	// !__NGDisabledItemComboBox_H__

⌨️ 快捷键说明

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