static void set_DropDownHight(CComboBox& box, UINT LinesToDisplay);
static void set_DropDownWidth(CComboBox& box);
void CComboBoxTestDlg::set_DropDownHight(CComboBox& box, UINT LinesToDisplay)
{
ASSERT(IsWindow(box));
CRect cbSize;
int Height;
box.GetClientRect(cbSize);
Height = box.GetItemHeight(-1);
Height += box.GetItemHeight(0) * LinesToDisplay;
Height += GetSystemMetrics(SM_CYEDGE) * 2;
Height += GetSystemMetrics(SM_CYEDGE) * 2;
box.SetWindowPos(NULL,
0, 0,
cbSize.right, Height,
SWP_NOMOVE | SWP_NOZORDER
);
}
void CComboBoxTestDlg::set_DropDownWidth( CComboBox& box, UINT nWidth )
{
ASSERT(IsWindow(box));
box.SetDroppedWidth(nWidth);
}
static const int ID_COMBOBOX = 2000;
if (!m_combo.Create(WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWNLIST,
rect,
this,
ID_COMBOBOX))
{
return -1;
}
set_DropDownHight(m_combo, 5);
set_DropDownWidth(m_combo, 100);