+ -
当前位置:首页 → 问答吧 → 怎样设置ComboBox的默认值?

怎样设置ComboBox的默认值?

时间:2011-12-01

来源:互联网

VS2005 C++ Windows编程,纯API的:
手动创建的复合框(ComboBox),带列表框的那种,和对话框模板创建的都无法在顶端显示默认文本。怎么办?
谢谢!

作者: Renyq   发布时间: 2011-12-01

顶一下,求高人指路。
谢谢!

作者: Renyq   发布时间: 2011-12-07

我也遇到过类似问题,用代码解决的。
在你的ComboBox所在的对话框类的初始化函数中,在已经addstring了可选值之后,SetCurSel一下就可以了,比如你想添加的是“一,二,三”,对应的是0,1,2这三个索引值,而你想让他初始化后显示第1个索引值对着的“二”,那就是:
BOOL DlgChannelParam::OnInitDialog()
{
if (CDialog::OnInitDialog())

  {
  client_num.addstring("一");
  client_num.addstring("二");
  client_num.addstring("三");

  client_num.SetCurSel(1);
  }
}

以上就可了~~~

作者: chenlu0538   发布时间: 2011-12-08

_AFXWIN_INLINE int CComboBox::SetCurSel(int nSelect)
{ ASSERT(::IsWindow(m_hWnd)); return (int)::SendMessage(m_hWnd, CB_SETCURSEL, nSelect, 0); }

直接用WIN32 API写窗口的话,遇到不知道怎么控制的控件时,就去看看MFC里面同样地控件
MFC就是封装的WIN32 API操作。

你这个直接调用
::SendMessage(hComboBoxWnd, CB_SETCURSEL, 0, 0); 
就行了

作者: iblold   发布时间: 2011-12-08