SetCurSel用于未分类的CComboBox无法正常工作

时间:2014-10-14 08:02:46

标签: mfc

在CComboBox属性编辑器中设置Sort = false时,以下内容不起作用(所选项目是第一个:index = 0):

SetCurSel(2)
SelectString(0, "2")
SetWindowText("2")

如果sort = true,它将起作用,但项目列表可能看起来如此:

1
10
2
20
5
50

示例(在所有三个控件中选择将为“1”):

BOOL CMyDialog::OnInitDialog()
{
    ((CComboBox*)GetDlgItem(IDC_CB_a))->AddString("1");
    ((CComboBox*)GetDlgItem(IDC_CB_a))->AddString("2");
    ((CComboBox*)GetDlgItem(IDC_CB_a))->AddString("3");
    ((CComboBox*)GetDlgItem(IDC_CB_a))->SelectString(0, "3");

    ((CComboBox*)GetDlgItem(IDC_CB_b))->AddString("1");
    ((CComboBox*)GetDlgItem(IDC_CB_b))->AddString("2");
    ((CComboBox*)GetDlgItem(IDC_CB_b))->AddString("3");
    ((CComboBox*)GetDlgItem(IDC_CB_b))->SetCurSel(2);

    ((CComboBox*)GetDlgItem(IDC_CB_c))->AddString("1");
    ((CComboBox*)GetDlgItem(IDC_CB_c))->AddString("2");
    ((CComboBox*)GetDlgItem(IDC_CB_c))->AddString("3");
    ((CComboBox*)GetDlgItem(IDC_CB_c))->SetWindowText("3");

    return CMyBaseDialog::OnInitDialog();
}

提醒:当Combo排序时,这就行了。

0 个答案:

没有答案