一篇关于在COMBOBOX中使用SENDMESSAGE的实例

本文提供了一个实例,演示如何利用SENDMESSAGE函数在文本框输入字符后,实现在COMBOBOX中实时查找匹配的字符串,并进行选中、添加、删除和插入等操作。程序涉及XP风格设置、SendMessage函数以及多种COMBOBOX相关常量的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近经常有人问我这个问题索引就把代码贴出来大家一起共享吧!其实难度很低就是SENDMESSAGE的应用而已。但是实用性却瞒高,看到很多程序都有类似的功能。

程序功能:
在TEXTBOX中输入字符后马上在COMBOBOX中找匹配的字符串一但找到马上下拉COMBOBOX菜单并且选中此字符串。然后在这期间用户可以使用“F3”继续查找其他类似匹配的字符串,当用户按下“回车键”就使COMBOBOX复原并且选中特定字符串。并且附带添加指定字符串和插入指定字符串已经删除指定字符串等功能。

程序源码如下:

Option   Explicit
"******************************************************************************************************************
"显示XP风格函数
Private   Declare   Sub   InitCommonControls   Lib   "comctl32.dll"   ()
"******************************************************************************************************************
"SendMessage函数和本实例使用到的一些常量
Private   Declare   Function   SendMessage   Lib   "user32"   Alias   "SendMessageA"   (ByVal   hwnd   As   Long,   ByVal   wMsg   As   Long,   ByVal   wParam   As   Long,   lParam   As   Any)   As   Long
"Private   Const   WM_GETTEXTLENGTH   =   &HE
Private   Const   CB_GETCOUNT   =   &H146
"Private   Const   WM_GETTEXT   =   &HD
"Private   Const   WM_SETTEXT   =   &HC
Private   Const   CB_FINDSTRING   =   &H14C
Private   Const   CB_ADDSTRING   =   &H143
Private   Const   CB_GETCURSEL   =   &H147
Private   Const   CB_SELECTSTRING   =   &H14D
Private   Const   CB_SHOWDROPDOWN   =   &H14F
Private   Co

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值