C/Visual C - Estilos CComboBox

 
Vista:

Estilos CComboBox

Publicado por luis (9 intervenciones) el 04/03/2009 17:04:52
Hola,

¿Como puedo cambiar dinámicamente mediante código un control CComboBox de 'Drop-down' a 'Drop-down list'? Es decir, cuando despliego la caja combo quiero que sea CBS_DROPDOWN y cuando la pliego que sea CBS_DROPDOWNLIST y pueda editar.

Me he creado una caja combo derivada de CComboBox (CComboBoxINT) con el siguiente código
...

BEGIN_MESSAGE_MAP(CComboBoxINT, CComboBox)
//{{AFX_MSG_MAP(CComboBoxINT)
ON_CONTROL_REFLECT(CBN_DROPDOWN, OnDropdown)
ON_CONTROL_REFLECT(CBN_CLOSEUP, OnCloseup)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
...

void CComboBoxINT::OnDropdown()
{
// ** Cambia el estilo de la caja combo a 'Drop-down list'
ModifyStyle(CBS_DROPDOWN, CBS_DROPDOWNLIST);
}

void CComboBoxINT::OnCloseup()
{
// ** Cambia el estilo de la caja combo a 'Drop-down'
ModifyStyle(CBS_DROPDOWNLIST, CBS_DROPDOWN);
}

Pero no funciona ¿porqué?

Gracias a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder