标签: ccombobox

用户从CComboBox中选择项目时捕获

这是基本的.

当用户从CComboBox(实际上是子类CComboBox)中选择一个项时,我想要捕获.

试过很多组合OnCblSelChange,OnCommand.猜猜我还没有打到正确的组合(没有双关语意).

操作系统是Vista,但我正在强制进行XP风格的对话(这应该不重要,不是吗?)

我能够捕获从CEdit和派生的类的事件CFileDialog.

我在这里结束了我的智慧.任何援助都将永远受到赞赏.

当然,任何源代码都会比以往更受欢迎.

mfc ccombobox

7
推荐指数
2
解决办法
1万
查看次数

如何使用搜索创建 MFC ComboBox

我需要一个具有搜索功能的 Windows MFC 应用程序中的组合框。它应该可以工作,以便如果您开始输入与列表中的一个或多个项目匹配的内容,组合框应该下拉并显示这些项目。有点像网络上流行的基于 ajax 的搜索框

您知道提供此功能的任何控件吗?- 有关于如何自己创建此类功能的信息的链接?- 有关于如何做到这一点的想法可以分享吗?

mfc ccombobox visual-c++

6
推荐指数
1
解决办法
5846
查看次数

在MFC中,如何判断是否启用了CComboBox?

我看到你可以使用EnableWindow方法启用/禁用,但是如何获取它的当前状态?

mfc ccombobox

4
推荐指数
1
解决办法
4125
查看次数

从CComboBox获取文本

我有一个myDialogBoxCComboBox成员(myComboBox)的CDialog ().我的目标是CString从下拉样式的编辑部分获取用户输入的文本(最好是a )CComboBox.但是,我似乎无法让它发挥作用.

我试过用了myComboBox.GetWindowText(myString).但每当我在调试模式下运行它时,我的代码在函数ASSERT(::IsWindow(m_hWnd))内部中断CWnd::GetWindowText().

我也试过了myDialogBox.GetDlgItemText(MY_COMBOBOX_ID, myString),它以类似的方式崩溃了.

另外,我试过:

    COMBOBOXINFO info;
    memset(&info,0,sizeof(info));
    myComboBox.GetComboBoxInfo(&info);
    LPTSTR str = new TCHAR[::GetWindowTextLength(info.hwndItem)];
    ::GetWindowText(info.hwndItem,str,::GetWindowTextLength(info.hwndItem));
Run Code Online (Sandbox Code Playgroud)

但是,它似乎没有info正确填充我的变量.

有人能指出我正确的方向吗?我究竟做错了什么?有什么建议?

编辑:以防万一它可能有助于理解我的最终目标,我试图有一个组合框,可以帮助用户图片和从字符串列表中选择.尽管如此,如果他/她不想在下拉列表中找到任何内容,他可以拿出自己的字符串.我想要一种接收用户输入字符串的方法.

mfc ccombobox visual-c++

3
推荐指数
1
解决办法
7776
查看次数

C++ MFC从窗口小部件ID添加组合框字符串项

我在MFC项目的MSVC 2010专业版的gui编辑器中添加了一个组合框.我有一个我从外部源获取的字符串列表,并希望将它们添加到我的组合框中.我搜索了一段时间,每个帖子似乎都暗示我需要使用CComboBox类,但是,我不知道如何从gui编辑器中的组合框元素的资源ID获取类变量.

总之,如何使用宏(如CB_ADDSTRING(RESOURCE_ID, "my string");)或使用CComboBOx(类似的东西CComboBox::GetObject(RESOURCE_ID)->AddString("blah");)将字符串添加到我的组合框中.

我没有做很多win32 api/mfc编程,只是开始摆弄它.

winapi mfc ccombobox combobox

2
推荐指数
1
解决办法
5654
查看次数

CComboBox排序

因此,我正在尝试在现有的应用程序上削减我的 CPP 牙齿。

我遇到了一些困难。我的组合框项目正在按顺序添加,如下所示。但是,输出是

[1,10,11,12,13,14,15,2,3,4,5,6,7,8,9]
Run Code Online (Sandbox Code Playgroud)

我在这里查看了CComboBox 文档。然而,我仍然很困惑为什么会产生这样的结果。

for (int i = 1; i <= m_pPage2->GetNumberColumns(); i++)
{
    CString szColNum;
    szColNum.Format (_T("%d"), i);
    m_cSubColumn.AddString(szColNum);
}
Run Code Online (Sandbox Code Playgroud)

c++ mfc ccombobox

2
推荐指数
1
解决办法
7655
查看次数

标签 统计

ccombobox ×6

mfc ×6

visual-c++ ×2

c++ ×1

combobox ×1

winapi ×1