![]() |
||
![]() ![]() |
CComboBox with support for historyThis article was contributed by Paul S. Vickery.
Environment: VC6 Introduction
The History Combo class CHistoryCombo is based on CComboBox, and includes support for keeping item history, including reading from and saving to the registry. It can also be used to display the contents of an existing CRecentFileList object. How to use itUsing the CHistoryCombo class is very straightforward. Follow the steps below to add one to an existing project. 1. After putting the source files (HistoryCombo.cpp and HistoryCombo.h) into the directory you wish to use them from, add the files to your Visual Studio project. 2. In the resource editor, add a combo where you wish. 3. In Class Wizard add a member variable for your combo control, selecting "Control" from the "Category" list, and selecting "CHistoryCombo" from the "Variable Type" list. (If CHistoryCombo does not appear in the list, you may need to delete your class wizard file (.clw) and regenerate it). I will assume your control variable name is m_comboHistory. 4. Add a handler for WM_INITDIALOG in your dialog class if you don't already have one, and add the following code to it: m_comboHistory.LoadHistory("Settings", "HistoryCombo");(Note: you can specify any strings you wish for the section, and key-prefix) 5. In your handler for the IDOK button, or whereever you choose, add the following: m_comboHistory.SaveHistory(); That's all you need to do. DocumentationEach function is documented in the cpp file. Here is a list of functions in CHistoryCombo: CString LoadHistory(LPCTSTR lpszSection, LPCTSTR lpszKeyPrefix, CString LoadHistory(CRecentFileList* pListMRU, BOOL bSelectMostRecent = TRUE); void SaveHistory(BOOL bAddCurrentItemtoHistory = TRUE); int AddString(LPCTSTR lpszString); void SetMaxHistoryItems(int nMaxItems); void ClearHistory(BOOL bDeleteRegistryEntries = TRUE); DownloadsHistoryDate Posted: May 21, 2001Comments:
|
![]() ![]()
|