默认组合框行为

【勇芳软件工作室】汉化HomePreviousNext

本节包含一个描述由预定义的COMBOBOX类窗口过程专门处理的消息的表。

信息描述
CB_ADDSTRING向列表窗口发送LB_ADDSTRING消息以添加列表项。
CB_DELETESTRING向列表窗口发送LB_DELETESTRING消息以删除列表项。
CB_DIR将与指定属性和路径匹配的文件名添加到列表。
CB_FINDSTRING向列表窗口发送LB_FINDSTRING消息。此消息返回以指定文本开头的第一个列表项的索引。
CB_FINDSTRINGEXACT发送LB_FINDSTRING消息到列表窗口。此消息返回与指定文本完全匹配的第一个列表项的索引。
CB_GETCOUNT向列表窗口发送LB_GETCOUNT消息。它返回列表项的数量。
CB_GETCURSEL向列表窗口发送LB_GETCURSEL消息。它返回当前所选项目的索引(如果有)。
CB_GETDROPPEDCONTROLRECT使用下拉列表的屏幕坐标填充指定的矩形结构。
CB_GETDROPPEDSTATE如果下拉列表打开,则返回TRUE;否则返回FALSE。
CB_GETDROPPEDWIDTH返回下拉列表的最小允许宽度(以像素为单位)。
CB_GETEDITSEL向编辑控件发送EM_GETSEL消息,并返回当前选择的开始和结束位置。在下拉列表框中,窗口过程返回CB_ERR。
CB_GETEXTENDEDUI如果组合框是下拉组合框或下拉列表框,并设置了扩展用户界面标志,则返回TRUE。否则返回FALSE。
CB_GETHORIZONTALEXTENT向列表窗口发送LB_GETHORIZONTALEXTENT消息。它返回下拉列表的可滚动宽度(以像素为单位)。
CB_GETITEMDATA发送LB_GETITEMDATA消息到列表窗口。它返回与指定列表项相关联的32位值。
CB_GETITEMHEIGHT向列表窗口发送LB_GETITEMHEIGHT消息。它返回指定所有者绘制的列表项的高度(以像素为单位)。
CB_GETLBTEXT发送LB_GETTEXT消息到列表窗口。它将指定的列表文本复制到指定的缓冲区。
CB_GETLBTEXTLEN向列表窗口发送LB_GETTEXTLEN消息。它返回指定列表文本的长度(以字节为单位)。
CB_GETLOCALE向列表窗口发送LB_GETLOCALE消息。它返回列表的当前区域设置。
CB_GETTOPINDEX向列表窗口发送LB_GETTOPINDEX消息。它返回下拉列表中第一个可见项目的索引。
CB_INITSTORAGE发送LB_INITSTORAGE消息到列表窗口。它初始化指定数量的项目的空间和项目字符串的指定字节数。
CB_INSERTSTRING向列表窗口发送LB_INSERTSTRING消息。它将列表项插入指定位置。
CB_LIMITTEXT向编辑控件发送EM_LIMITTEXT消息。它设置用户可以在编辑控件中输入的最大字符数。在下拉列表框中,窗口过程返回CB_ERR。
CB_RESETCONTENT向列表窗口发送LB_RESETCONTENT消息,并删除该列表的内容。
CB_SELECTSTRING向列表窗口发送LB_SELECTSTRING消息。它选择以指定文本中的字符开头的第一个列表项(如果有的话)。
CB_SETCURSEL向列表窗口发送LB_SETCURSEL消息,并设置当前选择。
CB_SETDROPPEDWIDTH设置下拉列表的最小允许宽度(以像素为单位)。
CB_SETEDITSEL向编辑控件发送EM_SETSEL消息。它选择指定的文本范围。在下拉列表框中,窗口过程返回CB_ERR。
CB_SETEXTENDEDUI设置或清除扩展的用户界面标志。此标志更改在下拉组合框或下拉列表框中打开和关闭列表的键。如果组合框是一个简单的组合框,窗口过程返回CB_ERR。
CB_SETHORIZONTALEXTENT向列表窗口发送LB_SETHORIZONTALEXTENT消息。它设置下拉列表的可滚动宽度(以像素为单位)。
CB_SETITEMDATA向列表窗口发送LB_SETITEMDATA消息。它将指定的32位值与列表项相关联。
CB_SETITEMHEIGHT发送LB_SETITEMHEIGHT消息到列表窗口。它设置指定的所有者绘制列表项或选择字段的高度。
CB_SETLOCALE向列表窗口发送LB_SETLOCALE消息,并设置列表的当前区域设置。如果列表具有CBS_SORT样式并使用CB_ADDSTRING添加字符串,则区域设置会影响列表的排序方式。
CB_SETTOPINDEX向列表窗口发送LB_SETTOPINDEX消息。它滚动下拉列表,使指定的项目位于可见范围的顶部。
CB_SHOWDROPDOWN显示或隐藏下拉列表。此消息对简单的组合框没有影响。
WM_CHAR处理字符输入在下拉列表框中,该消息被传递到列表窗口,该窗口将选择移动到以指定字符开始的第一个项目。在简单和下拉组合框中,将此消息传递给编辑控件。
WM_CLEAR删除编辑选择。在简单和下拉组合框中,编辑控件处理此消息。在下拉列表框中,窗口过程返回CB_ERR。
WM_COMMAND处理来自编辑控件和列表窗口的通知消息,并将相应的组合框通知消息发送到父窗口。
 对于编辑控制通知,窗口过程可以更新列表窗口的当前选择,插入符号索引和顶部索引。对于列表通知消息,窗口过程可以更新选择字段的内容。
WM_COMPAREITEM将消息传递给父窗口,使应用程序能够指定两个所有者绘制的列表项的相对排序位置。组合框窗口从列表窗口接收此消息。
WM_COPY将编辑选择复制到剪贴板。在简单和下拉组合框中,编辑控件处理此消息。在下拉列表框中,窗口过程返回CB_ERR。
WM_CREATE初始化组合框。
WM_CUT删除编辑选择并将其放在剪贴板上。在简单和下拉组合框中,编辑控件处理此消息。在下拉列表框中,窗口过程返回CB_ERR。
WM_DELETEITEM将消息传递给父窗口,通知应用程序列表项目已被删除。组合框窗口从列表窗口接收此消息。
WM_DRAWITEM将消息传递到父窗口,使应用程序可以绘制指定的列表项。组合框窗口从列表窗口接收此消息。窗口过程也可以发起此消息,使应用程序绘制下拉列表框的选择字段。
WM_ENABLE设置启用或禁止鼠标和键盘输入的状态。
WM_ERASEBKGND返回1,表示背景被删除。
WM_GETDLGCODE返回DLG_WANTCHARS和DLGC_WANTARROWS值的组合。
WM_GETFONT返回组合框将绘制其文本的当前字体的句柄。
WM_GETTEXT将选择字段的内容复制到指定的缓冲区。在简单和下拉组合框中,编辑控件处理此消息。
WM_GETTEXTLENGTH返回选择字段中文本的长度(以字符为单位)。在简单和下拉组合框中,编辑控件处理此消息。
WM_KEYDOWN处理非字符键盘输入。在下拉列表框中,此消息将发送到列表窗口,该窗口可能显示或隐藏自身,或更改其当前选择或插入符号索引。在简单和下拉组合框中,将此消息传递给编辑控件。编辑控件将某些键传递到列表窗口,例如UP和DOWN ARROW键和F4键。
WM_KILLFOCUS隐藏选择字段中的高亮,并在必要时关闭下拉列表。如果接收输入焦点的窗口是组合框的一部分(例如,编辑控件),则忽略该消息。
WM_LBUTTONDBLCLKWM_LBUTTONDOWN相同。
WM_LBUTTONDOWN将焦点设置为组合框,对于下拉组合框和下拉列表,可以打开或关闭列表。如果打开列表,窗口过程将通过拖动鼠标按钮来捕获鼠标以启用选择。
WM_LBUTTONUP如果鼠标打开列表,则释放鼠标捕获。
WM_MEASUREITEM将消息发送到父窗口,使应用程序能够修改指定的MEASUREITEMSTRUCT结构的内容。组合框窗口从列表窗口接收此消息。
WM_MOUSEMOVE如果鼠标已打开列表,鼠标按钮仍然停止,则将消息发送到列表窗口。这使得用户能够通过将鼠标指针拖动到列表项目然后释放按钮来选择项目。
WM_NCCREATE分配组合框窗口过程使用的内部数据结构。
WM_NCDESTROY释放资源以响应WM_NCCREATE消息。
WM_PAINT绘制组合框的无效区域。如果【wParam中】不为NULL,则假定它是从子类函数传递的DC句柄。窗口过程使用指定的DC而不是调用BeginPaintEndPaint.
WM_PASTE将编辑选择替换为剪贴板的内容。在简单和下拉组合框中,编辑控件处理此消息。在下拉列表框中,窗口过程返回CB_ERR。
WM_SETFOCUS将焦点设置为编辑控件,或者在下拉列表框中反转选择字段,并打开列表窗口中的插入符号。
WM_SETFONT将指定的字体句柄保存在内部结构中,调整选择字段和列表的尺寸,并使组合框窗口无效。选择字段中的文本和列表以保存的字体显示。
WM_SETREDRAW设置或清除重绘标志。如果重绘标志被清除,则组合框不会被重画,直到该标志被重新设置。
WM_SETTEXT设置编辑控件的内容。在简单和下拉组合框中,编辑控件处理此消息。在下拉列表框中,窗口过程返回CB_ERR。
WM_SIZE如果需要,调整子窗口大小。
WM_SYSKEYDOWN根据用户按下的箭头键打开或关闭下拉列表。

所有其他消息都将传递给DefWindowProc函数进行默认处理。