【问题标题】:Adding a string into CEdit Text box instead of CCombobox将字符串添加到 CEdit 文本框而不是 CCombobox
【发布时间】:2019-11-15 06:19:06
【问题描述】:

我目前有一个组合框,它显示一个数字列表,这些数字在其他地方检索并存储到变量“test”中。每次为“测试”设置另一个数字时,该数字将添加到组合框列表中。

有没有一种方法可以让我使用 CEdit 文本框而不是 CComboBox 来显示我的号码?

这就是我编写组合框的方式。

CComboBox *pCombobox = (CComboBox *) (GetDlgItem(IDC_ComboBox)); 

    strNumber.Format(_T("%d"),test);
    pCombobox->AddString(strNumber);

任何帮助将不胜感激。谢谢。

【问题讨论】:

    标签: c++ string combobox mfc edit


    【解决方案1】:

    假设您在对话框上放置了一个适当的编辑控件,例如 ID IDC_Edit,然后获取现有字符串,将新值附加到它,替换为新字符串。

    CString text;
    GetDlgItemText(IDC_Text, text);
    
    if (text.IsEmpty())
        text.Format(_T("%d"), test);
    else
        text.AppendFormat(_T(",%d"), test);
    
    SetDlgItemText(IDC_Text, text);
    

    【讨论】:

    • 感谢您的帮助,但它告诉我“不存在从 CString 到 int 的合适转换函数。”
    • @m170115 抱歉,我的语法错误。而是直接使用SetDlgItemInt
    • 这仅设置 1 个数字。我的组合框中有多个数字。有没有办法像AddString 函数一样循环这个函数,以便显示我所有的数字?
    • 不清楚。你想显示什么?多个数字彼此相邻?如何分隔?
    • 我的组合框现在的列表中有数字“1”、“3”、“4”、“8”。每次将另一个号码设置为“测试”时,该新号码将被添加到列表中。我不想在下拉框中查看所有数字,而是想在编辑文本框中将其显示为“1,3,4,8...”。
    猜你喜欢
    • 2020-05-13
    • 1970-01-01
    • 1970-01-01
    • 2019-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多