VC中如何获得选中的下拉列表框中的值

我查了combobox的函数。。都是返回第几个位置,字节数的函数。。没有返回值。。请问该怎么获得值。。谢谢。。

int nSel;
CString strBook;
CComboBox cmbBook;

nSel = cmbBook.GetCurSel();//选中的索引
if(nSel != LB_ERR)
{
cmbBook.GetLBText(nSel,strBook);//选中的内容保存到strBook中
}

  CComboBox通用操作:

  GetCount 取得组合框的列表框中项的个数

  GetCurSel 取得组合框的列表框中当前选中项(如果有的话)的下标

  SetCurSel 在组合框的列表框中选择一个字符串

  GetEditSel 取得组合框的编辑控件中当前选项的起止字符位置

  SetEditSel 选中组合框的编辑控件中的字符

  SetItemData 设置组合框中指定项的32位值

  SetItemDataPtr 把组合框中指定项的32位值设置成一个指定的void型指针

  GetItemData 检索应用为组合框的项提供的32位值

  GetItemDataPtr 检索应用为组合框的项提供的32位值,返回一个void型指针

  GetTopIndex 返回组合框中列表框的第一个可见项的下标

  SetTopIndex 让组合框的列表框显示指定下标所在的项

  SetHorizontalExtent 设置组合框中列表框的水平宽度(以像素为单位),如果列表超过该宽度,将需要用滚动条

  GetHorizontalExtent 返回组合框中列表框的水平宽度(以像素为单位)

  SetDroppedWidth 设置组合框中下拉列表允许的最小宽度

  GetDroppedWidth 返回组合框中下拉列表允许的最小宽度

  Clear 删除编辑控件中的当前选择(如果有的话)

  Copy 以CF_TEXT格式拷贝编辑控件中的当前选择(如果有的话)到剪贴板

  Cut 删除编辑控件中的选择项(如果有的话),并把删除的内容以CF_TEXT格式拷贝到剪贴板

  Paste 在编辑控件中的当前位置粘贴剪贴板中的内容。仅当剪贴板中的数据是CF_TEXT格式的才会真正插入

  LimitText 设置用户可以在组合框的编辑控件中输入的文本的最大长度

  SetItemHeight 设置组合宽中列表框的项的高度或编辑控件(或静态控件)中文本的高度

  GetItemHeight 取得组合框中列表项的高度

  GetLBText 从组合框的列表框中取得一个字符串

  GetLBTextLen 取得组合框的列表框中某个字符串的长度

  ShowDropDown 显示或者隐藏风格为CBS_DROPDOWN或CBS_DROPDOWNLIST的组合框的列表框

  GetDroppedControlRect 取得组合框中可见(已经下拉)的列表框的屏幕坐标

  GetDroppedState 检测组合框的列表框是否可见(是否已经下拉)

  SetExtendedUI 选择风格为CBS_DROPDOWN或CBS_DROPDOWNLIST的组合框中的列表框的缺省用户接口或扩展用户接口

  GetExtendedUI 检测组合框的用户接口是缺省的还是扩展的

  GetLocale 取得组合框的定位标记

  SetLocale 设置组合框的定位标记

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-10
int i ;
CComboBox m_Box;
CString strBox ;

i = m_Box.GetCurSel();
m_Box.GetLBText(i, strBox);

strBox 就是要下拉框对应值本回答被提问者采纳
第2个回答  2010-08-09
学习中,不错!

VC++中下拉列表框的问题(如何实现选择列表框中的选项而改变另外一个函数...
把你的CComboBox的设为int类型 m_iCom;至于下拉框内的内容,你用你的初始化函数实现就可以了,也可以直接在控件属性的Data中直接写。m_ctrlComm.SetCommPort(short(m_iCom));这样有不会出错,楼上的回答中如果你选中“选择串口”时就会出错了。“希望有高手能看见我的问题。。。拜托百度阿姨了。。

vc++怎么设置下拉菜单默认值?
1. 可以用函数SetCurSel()2. GetCurSel() 会返回 CB_ERR 如果没选项

如何让VC制作的下拉列表框显示有默认数据,不用下拉再点选
你在初始化时加入去就行了。如果是对话框的话在InitDialog里写,用的函数大概是SetCurSel()吧,设置当前选择的项,这样就可以了。

VC++ 里的组合框下拉列表的数据不显示。
组合框的高度是不能修改的,它是由系统决定的,但下拉部分的高度(即在下拉框中显示多少行)是可以设置的。在VB和Delphi中默认的高度是8行,但在VC++中默认为0。你需要在设计时,用鼠标在下拉箭头上(必须是这个位置)点一下,这时出现下图所示的方框,拉住下方的蓝块向下移动,直到一个满意的高度为止。

VC组合框的下拉列表框如何显示多列的列表框?
选中控件点击回车,有一个选项叫“数据”,点击进入即可输入数据,要想回车按“ctrl+enter”。

VC里的对话框里的combobox 的data
1. 打开 resource.h,将你的ComboBox控件ID进行连续编号,例如1001,1002...2. 在对话框类的头文件中添加公有成员函数:afx_msg void OnUpdateCombo(UINT uID) ;3. 在对话框类的cpp文件中BEGIN_MESSAGE_MAP(CTestDlg, CDialog) 的 \/\/}}AFX_MSG_MAP下添加代码 ON_CONTROL_RANGE(CBN_EDITUPDATE...

请问高手,用VC怎么作一个表格的程序,实现简单的表格的功能
1. 当鼠标点击表格控件的某一格时,首先判断该列的属性,是直接编辑还是使用下拉列表进行选择。2. 显示或隐藏文本控件或下拉列表控件,使显示位置和大小与选中格相同,覆盖选中格。3. 将选中格的内容填入文本控件或下拉列表控件中。4. 修改完毕后,将新内容填入选中格,同时隐藏文本控件或下拉列表控件。...

我在VC下写了一个下拉列表,但是往里填值的时候却老是填不进去,怎么回事...
CComboBox *gamelist= NULL;gamelist = new CComboBox;gamelist = (CComboBox*)GetDlgItem(IDC_GAMELIST);这样就可以了,但是使用完以后一定要delete申请的内存空间。其实你这里不是动态添加的控件,不需要使用指针的。将IDC_GAMELIST这个控件添加一个变量,直接用变量AddString就可以了,安全,省事。

那个VC下拉列表不显示数据,你最后是怎么解决的呀?
可能是和IE冲突了,把IE卸掉再试试

在vc中的combo box控件中怎样选中下拉列中一项弹出另一个对话框
rocedure qsort(l,r:longint);var i,j,x,y:longint;begin i:=l;j:=r;x:=a[random(r-l)+l];\/\/随机化即可 Repeat while a<x do inc(i);while a[j]>x do dec(j);if i<=j then begin y:=a;a:=a[j];a[j]:=y;inc(i);dec(j);end;c ...

相似回答