hur.cn - 华软网

 热门搜索

listbox问题

  作者:未知    来源:网络    更新时间:2011/8/16
我想执行这种动作:鼠标双击listbox的一个内容会使这内容出现在编辑框中,或者是选中了listbox中的某一行然后它可以在编辑框中显示出来,该怎么办?
---华软 网友回答---
完全在你的个人操作,由个人实现,比如选择listbox项时取得内容,进行相应的操作
---华软网友回复---
1 你应该知道Listbox每行的内容
2 你应该知道点击是Listbox哪行
3 你就可以显示点击的内容了
---华软网友回复---
让listbox响应鼠标双击操作,然后知道选择了那行,直接操作就可以了
---华软网友回复---
你查看msdn,CListBox,有个函数可以返回你点的ITEM的索引号,根据这个索引号得到你要的是数据,然后把这个数据传给那个要显示的控件
---华软网友回复---
引用楼主 laigs 的回复:
我想执行这种动作:鼠标双击listbox的一个内容会使这内容出现在编辑框中,或者是选中了listbox中的某一行然后它可以在编辑框中显示出来,该怎么办?

NM_CLICK/NM_DBLCLK消息
---华软网友回复---
这里的例子是通过listctrl实现的
不过原理大同小异
http://blog.csdn.net/xianglitian/article/details/5617173
---华软网友回复---
响应鼠标双击操作,然后将ListBox当前选中的这行。。。传过去即可
---华软网友回复---
你这问题不难, :-)
推荐你几本书
精通Visual.Cpp实效编程280例.pdf
Visual C++编程技巧精选500例.pdf
Visual+C++实效编程百例(第二版).pdf

一般问题在里面都能查到,网上有电子书和源码。这三本书我都有
---华软网友回复---
NM_DBLCLK事件消息响应下,然后根据iITem获取内容
---华软网友回复---
在类向导中添加OnDblclkList方法,比如你想显示name,那么可以这样
C++">
UpdateData(TRUE);
CString name;   //先定义一个字符串存放name
int pos = m_List.GetSelectionMark();  //获取你鼠标选中的位置
//假如你的name在第一个字段,那么对于List来说位置就是0,取出
name = m_List.GetItemText(pos,0);   //这里m_List是关联你的ListBox的变量,这样就把你选中的值取出来了,如果还要取其他的值的话类似
SetDlgItemText(IDC_EDIT1,name);   //此处将你选中的值显示在IDC_EDIT1编辑框中
UpdateData(FALSE);

这样就行了
---华软网友回复---
好人做到底:http://www.pudn.com/downloads376/sourcecode/windows/control/listview/detail1624520.html
这个例子直接可以运行,我写的。
基本满足你的要求
---华软网友回复---
关注中,希望以后用到      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。