win32 5.4 使用 组合框

  1. 组合框 介绍:
    1. 顾名思义,组合框是一个“组合”起来的东西,它由一个可供选择的列表,一个可供输入的 edit 类 组合而成的。
    2. 组合框让用户既可以自己输入文本,也可以选择列表中的某一项当做输入。
    3. 组合框的三种不同风格:
      1. CBS_SIMPLE 风格:它的上面是可以输入的文本,下面的列表可供选择预设本文。
      2. CBS_DROPDOWN风格:上面同样可以输入文本,但下面的列表时下拉式的,平常属于收起状态。
      3. CBS_DRIODOWNLIST风格:它仅是一个下拉的选择框,上面的框中不允许输入文字。win32 5.4 使用 组合框
    4. 组合框 其他的一些风格:win32 5.4 使用 组合框
  2. 组合框中的定义:
    1. 在 rc文件 中的定义:
      win32 5.4 使用 组合框
    2. 组合框 的 初始化:
      win32 5.4 使用 组合框
  3. 组合框中的消息处理:
    1. 组合框中列表框部分的文字添加、项目的选择等操作都是通过发送消息来完成的,主要的消息如图所示:win32 5.4 使用 组合框
    2. 当用户在组合框中进行选择时,Windows向对话框发送 WM_COMMAND 消息,消息中wParam参数的低16位是组合框ID,高16位是通知码,用来表示用户的操作,通知码的定义:win32 5.4 使用 组合框
    3. 用户选择了一个项目后做的相应的动作,最好的办法就是处理 CBN_SELENDOK通知码。win32 5.4 使用 组合框
    4. 对于编辑控件:
      1. 以上操作都是下拉部分的,很多都是针对 组合框 中的编辑控件,对组合框的窗口句柄发送 WM_GETTEXT 和 WM_SETTEXT,操作对象就是组合框的编辑控件。
      2. 可以发送 CB_LIMITTEXT 消息,限定编辑框中文本输入的最大长度。
      3. 当用户在编辑框中编辑文字的时候,windows在显示用户输入,字符显示之前会发送 CBN_EDITUPDATE 通知码;在显示之后又会发送 CBN_EDITCHANGE通知码。所以,用户在处理 WM_COMMAND 消息的时候,通过处理这两个通知码可以检测到用户的输入操作。