带有历史信息的ComboBox

这个博客介绍了一个名为CHisInfoComboBox的类,它继承自CComboBox,并实现了从注册表中读取和保存历史信息的功能。该类能够自动匹配用户输入,并在用户编辑框获得焦点时从注册表加载历史记录,且始终保持最新记录在下拉列表顶部。博客内容包括类的声明、成员函数的定义以及消息映射。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#pragma once

#include <list>

#define MAXSTRSIZE 1500     //"值"字符串的最大长度
#define MAXVALUE 10       //注册表保留最大的历史记录数目, 最好设置为1-25之间

class CHisInfoComboBox : public CComboBox
{
	DECLARE_DYNAMIC(CHisInfoComboBox)

public:
	CHisInfoComboBox();
	virtual ~CHisInfoComboBox();

public:
	bool SetHistoryInfoToReg();             
	bool GetHistoryInfoFromReg();

	bool SetHistoryInfoToBuffer();          //把历史信息放进内存
	bool GetHistoryInfoFromBuffer();        //从内存取出历史信息
		
protected:
	void InitHisInfo();
public:
	afx_msg void OnCbnKillfocus();
	afx_msg void OnDestroy();
	afx_msg void OnCbnEditchange();
	afx_msg void OnCbnDropdown();
	afx_msg void OnCbnSetfocus();
protected:
	DECLARE_MESSAGE_MAP()

private:
	CRegKey m_regKey;	
	CString m_strKey;
	std::list<CString> m_lContentOfList;	
	bool m_bFlag;	
};

// CHisInfoComboBox

IMPLEMENT_DYNAMIC(CHisInfoComboBox, CComboBox)

CHisInfoComboBox::CHisInfoComboBox():m_b
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值