19 12
发新话题
打印

一个Combo的列子,大家看看帮帮忙

一个Combo的列子,大家看看帮帮忙

这几天我想做一个带动态列表提示的文本框。结果费了很大的劲,还是问题百出。最后想放弃,想起了Combo。就拿来试了试
基本的还可以,只是在使用时有3点小问题。让使用的体验不是很爽快。
1。当输入第一个字符时且内容为空时,如果列表中有这样一项开头与这个字符相同,那么combo就会自动输入这一项的全部,并在combo中显示且全选(这一点不想要)这一点是因为调用了CB_SHOWDROPDOWN。但不调用又不是我想要的。
2。当程序调用Sendmessage CB_SHOWDROPDOWN时,那个列表把鼠标指针也给盖住了。而且所有输入法的状态条也在这个列表下边。这样也不好。
3。当输入了一部分内容时,(假设我的内容已经输完了)这时列表中有一项头部与我输入的内容一样,这时按下回车时。combo会输入那一项的全部内容。这不是我想要的。
我只是要做一个能够控制的提示功能。不要这么多自动化的东西。
大家看看这个示列程序和代码。
如果大家谁理解我的意思帮忙推荐一个类似的控件,最好带源码.有需要,我再改改.
附件: 您所在的用户组无法下载或查看附件

TOP

大家为什么光看不回复呢?
我只是想要一个一边输入,一边显示列表,列表同时能够做增量查询.有这样功能 的一个控件,正在努力中..
Combo在输入的时候列表就藏起来了,所以在Change事件中调用CB_SHOWDROPDOWN

TOP

我来回复,老大为什么不用VC要用VB呢,VB下的控件很男做的呀。
瞧我给你一个用VC做的Combo。请老大笑纳。
附件: 您所在的用户组无法下载或查看附件

TOP

以前做过这种,用edit+popmenu做的
你才是国家队的,你全家都是国家队的

TOP

我正在琢磨怎么在CEditView里实现一个AutoComplete,现在还没有找到合适的方法,用的是VC

TOP

认真体验了一下楼上大哥的示例发现了两个问题:即我所说的后两项
我推测应该是用MFC继承combo的类加以扩展,得来的
不过功能确实不错。以上两个问题解决了,可能会更好。
这个示例很好地解决了用户输入内容与自助输入内容能够分开,这个VB处理好Keypress事件也是可以做到的。
不过我所说的是一个自己指定的列表窗口,可以更自由地控制。让体验会更好一些

TOP

感谢浅释大哥提醒,我正发愁那个提示窗口的显示问题,

TOP

我在给大家提供一个

可以自己指定的列表窗口,请大家笑纳
由于我的系统是大字体,可能在正常字体的系统下运行会有一些问题?

[ 本帖最后由 w1984721 于 2007-12-8 18:30 编辑 ]
附件: 您所在的用户组无法下载或查看附件
本帖最近评分记录
  • sst258 活力 +3 多谢分享 2007-12-8 18:56

TOP

引用:
原帖由 winsoft 于 2007-12-8 18:05 发表
我正在琢磨怎么在CEditView里实现一个AutoComplete,现在还没有找到合适的方法,用的是VC
不会吧用VC没有实现,老大不是骗我们吧!

TOP

不错,思路已清晰了。
回去好好看看MSDN,VB实现起来应该没问题

TOP

 19 12
发新话题