// InPlaceComboBox.cpp : implementation file
|
//
|
|
#include "stdafx.h"
|
#include "InPlaceComboBox.h"
|
#include "ListCtrlEx.h"
|
|
#ifdef _DEBUG
|
#define new DEBUG_NEW
|
#undef THIS_FILE
|
static char THIS_FILE[] = __FILE__ ;
|
#endif
|
|
/////////////////////////////////////////////////////////////////////////////
|
// CInPlaceComboBox
|
|
CInPlaceComboBox::CInPlaceComboBox(int iItem,int iSubItem)
|
{
|
m_iItem = iItem;
|
m_iSubItem = iSubItem;
|
}
|
|
CInPlaceComboBox::~CInPlaceComboBox()
|
{
|
}
|
|
|
BEGIN_MESSAGE_MAP(CInPlaceComboBox, CComboBox)
|
//{{AFX_MSG_MAP(CInPlaceComboBox)
|
ON_WM_CREATE()
|
ON_CONTROL_REFLECT(CBN_SELCHANGE, OnSelchange)
|
ON_WM_KILLFOCUS()
|
//}}AFX_MSG_MAP
|
END_MESSAGE_MAP()
|
|
/////////////////////////////////////////////////////////////////////////////
|
// CInPlaceComboBox message handlers
|
|
int CInPlaceComboBox::OnCreate(LPCREATESTRUCT lpCreateStruct)
|
{
|
if (CComboBox::OnCreate(lpCreateStruct) == -1)
|
return -1;
|
|
CFont* font = GetParent()->GetFont() ;
|
SetFont(font) ;
|
|
SetFocus() ;
|
SetCurSel(0) ;
|
// TODO: Add your specialized creation code here
|
|
return 0;
|
}
|
|
|
void CInPlaceComboBox::OnSelchange()
|
{
|
// TODO: Add your control notification handler code here
|
CString str;
|
GetLBText(GetCurSel(),str);
|
((CListCtrlEx*)GetParent())->InsertListItem(m_iItem,m_iSubItem,(LPTSTR)(LPCTSTR)str);
|
ShowWindow(SW_HIDE);
|
}
|
|
void CInPlaceComboBox::OnKillFocus(CWnd* pNewWnd)
|
{
|
CComboBox::OnKillFocus(pNewWnd);
|
|
// TODO: Add your message handler code here
|
// DestroyWindow();
|
}
|