我有一个可编辑的控件类的组合框但是运行后,随意编辑的内容,怎么获得这个内容字符?好像GetCurSel()也没用。所以我的目的是,随便编辑的内容,要获得这个字符串还有GetCurSel()值如何做呢?
解决方案 »
- 作为客户端的软件,在一台计算机上可以链接多个不同IP地址的服务器吗?
- VC调用的DLL问题
- ********继续散20分,第10个人进来后结贴,为的是细水长流**********
- 谁有Windows网络与通信程序设计(王艳平)随书光盘?
- CListCtrl有没有函数能指定某一行的背景色?
- 一个服务器多个客户端的问题。
- MFC代码,在派生类成员函数中,1)有时调用基类中的同名函数,有时不调用。2)有时放在最开始调用基类中的同名函数,有时放在最后调用。
- PeekMessage用法??谢谢!!
- tab键 不好使
- 问一个很菜的问题,我怎么知道MFC里有那些函数可以被调用。
- XproerIM2开源
- VC怎么取得本地IP地址?
COMBOBOXINFO cbi = {sizeof(COMBOBOXINFO)};
m_cb.GetComboBoxInfo(&cbi);
CWnd::FromHandle(cbi.hwndItem)->GetWindowText(str);
来得到
ComboBox其实由Edit、ListCtrl组成的
GetComboBoxInfo可以获取到两者的窗口句柄
具体看MSDN
typedef struct tagCOMBOBOXINFO {
DWORD cbSize;
RECT rcItem;
RECT rcButton;
DWORD stateButton;
HWND hwndCombo; //Handle to the combo box.
HWND hwndItem; //Handle to the edit box.
HWND hwndList; //Handle to the drop-down list.
} COMBOBOXINFO, *PCOMBOBOXINFO, *LPCOMBOBOXINFO;
GetLBText估计是获取ListBox的Text
随意编辑内容后,如果和原有的Item的String匹配不上的话,CurSel会被设置为-1
这时GetLBText(GetCurSel())是会报错的,获取不到内容
测试了下,在ComboBox里手动输入字符串后,无论匹配不匹配,CurSel都会被设置为-1
CString strText;
GetDlgItem(IDC_COMBO1)->GetWindowText(strText);就这三句话.