Win32字控件-组合框
来源:互联网 发布:淘宝网ie8不能使用 编辑:程序博客网 时间:2024/04/30 02:37
[样式]
#define CBS_SIMPLE //输入框和列表框同时被显示
#define CBS_DROPDOWN 下拉式组合框,但是输入框内可以进行输入
#define CBS_DROPDOWNLIST 下拉式组合框,但是输入框内不能进行输入
#define CBS_OWNERDRAWFIXED 列表项是固定高度,在自绘中
#define CBS_OWNERDRAWVARIABLE 列表项是可变高度,在自绘中
#define CBS_AUTOHSCROLL 当样式为CBS_SIMPLE或CBS_DROPDOWN,且输入文本超过可显示范围时,自动向右滚动文本。
#define CBS_OEMCONVERT 使编辑框组件中的正文可以在ANSI 字符集和OEM字符集之间相互转换。这在编辑框中包含文件名时是很有用的
#define CBS_SORT 自动排序输入的字符串到列表框中
#define CBS_HASSTRINGS 指定一个含有字符串的自绘式组合框
#define CBS_NOINTEGRALHEIGHT 组合框的尺寸由应用程序而不是Windows 指定,通常,由Windows指定尺寸会使列表项的某些部分隐藏起来
#define CBS_DISABLENOSCROLL 使列表框在不需要滚动时显示一个禁止的垂直滚动条
#define CBS_UPPERCASE 将编辑框和列表框中的所有文本都自动转换为大写字符
#define CBS_LOWERCASE 将编辑框和列表框中的所有文本都自动转换为小写字符
[通知码]
CBN_CLOSEUP:组合框的列表框组件被关闭,简易组合框不会发送该通知消息
CBN_DBLCLK:用户在某列表项上双击鼠标,只有简易组合框才会发送该通知消息
CBN_DROPDOWN:组合框的列表框组件下拉,简易式组合框不会发送该通知消息
CBN_EDITUPDATE:在编辑框准备显示改变了的正文时发送该消息,下拉列表式组合框不会发送该消息
CBN_EDITCHANGE:编辑框的内容被用户改变了,与CBN_EDITUPDATE不同,该消息是在编辑框显示的正文被刷新后才发出的,下拉列表式组合框不会发送该消息
CBN_ERRSPACE:组合框无法申请足够的内存来容纳列表项
CBN_SELENDCANCEL:表明用户的选择应该取消,当用户在列表框中选择了一项,然后又在组合框控件外单击鼠标时就会导致该消息的发送
CBN_SELENDOK:用户选择了一项,然后按了回车键或单击了下滚箭头,该消息表明用户确认了自己所作的选择
CBN_KILLFOCUS:组合框失去了输入焦点
CBN_SELCHANGE:用户通过单击或移动箭头键改变了列表的选择
CBN_SETFOCUS:组合框获得了输入焦点
[消息]
CB_GETEDITSEL 当样式为CBS_SMIPLE或CBS_DROPDOWN时获取输入框中被选文本的开始-结束位置。
int a=SendMessage(combobox1,CB_GETEDITSEL,NULL,NULL); //LOWORD(a)起始,HIWORD(a)结束
CB_LIMITTEXT 当样式为CBS_SMIPLE或CBS_DROPDOWN时限制输入框文本的长度。SendMessage(combobox1,CB_GETEDITSEL,16,NULL);
CB_SETEDITSEL 当样式为CBS_SMIPLE或CBS_DROPDOWN时设置一段选中字符。SendMessage(combobox1,CB_GETEDITSEL,0,5);
CB_ADDSTRING 添加字符串项目
CB_DELETESTRING 删除字符串项目
CB_DIR 应用程序发送LB_DIR消息向列表框添加(驱动器或文件夹或文件)列表,wParam应设置为文件属性,lParam设置为过滤器
文件属性:
wParam参数的值。指定文件的属性被添加到列表框中。这个参数可以是下列值的组合:值描述
DDL_ARCHIVE包括归档文件。
DDL_DIRECTORY包括子目录。子目录名被括在方括号([])。
DDL_DRIVES包括驱动器。驱动形式列出[-X],其中x是驱动器盘符。
DDL_EXCLUSIVE只包括具有指定属性的文件。默认情况下,读写文件列出,即使没有指定DDL_READWRITE。
DDL_HIDDEN包括隐藏文件。
DDL_READONLY包括只读文件。
DDL_READWRITE包括读写文件没有附加属性。
DDL_SYSTEM包括系统文件。
例:
//列出C盘所有子目录和文件(包括隐藏文件和系统文件),返回值为最末项的索引号
INT n=SendMessage(listbox1,CB_DIR,DDL_ARCHIVE|DDL_DIRECTORY|DDL_HIDDEN|DDL_SYSTEM,TEXT("c:\\*.*"));
//列出硬盘所有分区,返回值为最末项的索引号
INT n=SendMessage(listbox1,CB_DIR,DDL_ARCHIVE|DDL_DRIVES,TEXT(""));
CB_GETCOUNT 返回列表框所有项目数。SendMessage( listHwnd,CB_GETCOUNT,0,0 );
CB_GETCURSEL返回从0开始的选中项索引值 ,没有选中项返回-1
CB_GETLBTEXT 将第n项中的文本放入缓存区并返回该项上的字符串长度。int iLength=SendMessage(combobox1,CB_GETLBTEXT,n,szTemp);
CB_GETLBTEXTLEN 得到第n项的文本长度int n=SendMessage(combobox1,CB_GETLBTEXTLEN,n,NULL);
CB_INSERTSTRING 插入字符串项,SendMessage( combobox1,CB_INSERTSTRING,1,TEXT("e") );//在索引位置1处插入
CB_RESETCONTENT 删除所有项,SendMessage( combobox1,CB_RESETCONTENT,0,0 );
CB_FINDSTRING 从起始位置n开始查找匹配项,并返回匹配成功的索引号。int iLength=SendMessage(combobox1,CB_FINDSTRING,n,TEXT("关键字") );
CB_SELECTSTRING 应用程序发送LB_SELECTSTRING的信息搜索单选列表框中指定的字符串中的字符开头的项目。如果找到匹配的项目,该项目被选中。wParam开始搜索的项索引号,lParam要搜索字符串。如果搜索成功,则返回值是所选项目的索引。如果搜索不成功,则返回值是LB_ERR并不会改变当前选择。
CB_SETCURSEL 选中单选组合框中某项,SendMessage( cbHwnd,CB_SETCURSEL,2,0 );//选中第2项
CB_SHOWDROPDOWN 显示或隐藏组合框,SendMessage( cbHwnd,CB_SHOWDROPDOWN,TRUE,0 )
CB_GETITEMDATA 得到组合框中某项的值,而非文本
CB_SETITEMDATA 设置组合框中某项的值,而非文本
CB_GETDROPPEDCONTROLRECT 返回组合框下拉列表框的屏幕坐标到一个矩形中,SendMessage( cbHwnd,CB_GETDROPPEDCONTROLRECT,0,&rect )
CB_SETITEMHEIGHT 当组合框为CBS_OWNERDRAWVARIABLE风格时,设置列表项的高度,以像素为单位
CB_GETITEMHEIGHT 当组合框为CBS_OWNERDRAWVARIABLE风格时,返回列表项的高度,以像素为单位
CB_SETEXTENDEDUI 设置组合框是否用扩展用户界面,设置为TRUE时用↓键打开下拉列表框,为FALSE时用F4键打开下拉列表框,SendMessage(combobox1,CB_SETEXTENDEDUI,TRUE,0);
CB_GETDROPPEDSTATE 得到组合框是否用扩展用户界面,返回TRUE或FALSE
CB_FINDSTRINGEXACT 返回索引号,该项精确匹配要查找的字符串,不区分大小写。例如查找所有列表项中是否有"abc"
INT nIndex=SendMessage(combobox1,CB_FINDSTRINGEXACT,-1,TEXT("abc"));
CB_SETLOCALE 此消息设置列表框中的当前地区。高位字包含国家代码,低位字包含的语言标识符。请使用宏MAKELCID地区构造标识符和的MAKELANGID宏来构造语言识别。
CB_GETLOCALE 此消息检索列表框中的当前地区。返回值:高位字包含国家代码,低位字包含的语言标识符。宏PRIMARYLANGID获得的主要语言标识符和的SUBLANGID宏获得子语言标识符。
CB_GETTOPINDEX 得到列表框中第一个可见项目的索引。
CB_SETTOPINDEX 设置列表框中第一个可见项目的索引。
CB_GETHORIZONTALEXTENT 返回列表框水平滚动的宽度,以像素为单位。
CB_SETHORIZONTALEXTENT 设置列表框水平滚动的宽度,以像素为单位。
CB_GETDROPPEDWIDTH 检索允许的最小宽度,以像素为单位。当组合框风格为CBS_DROPDOWN或CBS_DROPDOWNLIST时。默认情况下最小宽度为0
CB_SETDROPPEDWIDTH 设置允许的最小宽度,以像素为单位。当组合框风格为CBS_DROPDOWN或CBS_DROPDOWNLIST时。默认情况下最小宽度为0
CB_INITSTORAGE 当添加大量的项目时,此消息先初始化项目的数量和分配内存,然后再添加列表框。能提高性能。
wParam:要添加的项目数量
lParam:分配的内存量,以字节为单位
- Win32字控件-组合框
- win32之组合框
- Win32字控件-列表框
- win32 21使用静态控件,文本编辑控件,滚动条,组合框,列表框
- 【win32】day10-组合框/列表框/滚动条/控件的自绘制
- 组合框控件
- Windows 组合框控件
- 组合框控件(combobox)
- 组合框控件(combobox)
- 组合框控件CComboBox
- 组合框控件
- win32 组合框操作 - 窗口消息
- C++组合框控件使用方法
- excel 组合框控件使用方法
- 下拉框,树形组合控件
- MFC ComBox组合控件框
- Combo Box (组合框)控件
- 组合框控件用法大全
- (Excel导出失败)检索COM类工厂中CLSID为{00024500-0000-0000-C000-000000000046}的组件时失败
- 单例在Spring中配置
- Android:TelephonyManager,MyPhoneStateListener监听手机信号强度
- Android自定义长按事件
- linux基础(一)------登录以及文件系统的了解
- Win32字控件-组合框
- 黑马程序员——浅谈java接口
- [Other View] 隆重推荐【SQLServer】127个SQL server热门资料汇总
- 计算机经典书籍
- hibernate inverse cascade
- VC下连接SQLserver2005
- [JS & JQUERY] 82个Javascript免豆资料下载地址汇总
- 一些好玩的简单网页技术
- [shell学习积累] 环境配置