SDK_组合框的使用

组合框的使用

  • 组合框的创建:有三种风格,分别 Simaple,Dropdown(可输入), 下拉列表(不可输入)

    • 可以通过可视化编程中下拉列表的 下拉箭头 设置列表的长度

  • 如何向组合框控件中添加数据,并且指定默认的选项

    // 1. 找到组合框的句柄
    HWND hComboBox = GetDlgItem(hWnd, IDC_COMBO1);

    // 2. 添加默认的数据
    ComboBox_AddString(hComboBox, L"男生");
    ComboBox_AddString(hComboBox, L"女生");
    ComboBox_AddString(hComboBox, L"狗眼");

    // 3. 设置默认的选中项
    // ComboBox_SetCurSel(hComboBox, 2);
    ComboBox_SelectString(hComboBox, 0, L"狗");
  • 组合框的响应仍然是 WM_COMMAND 消息

    case WM_COMMAND:
    {
       // 筛选 id 和行为(选项被改变的行为)
       if (IDC_COMBO1 == LOWORD(wParam) && HIWORD(wParam) == CBN_SELCHANGE)
      {
           // 获取点击的选项是下拉列表中的第几项(从 0 开始)
           int index = ComboBox_GetCurSel((HWND)lParam);

           // 根据选中项加载图片
           HBITMAP hBitmap = LoadBitmap(GetModuleHandle(NULL),
                                        MAKEINTRESOURCE(IDB_BITMAP1 + index));

           // 设置静态控件的图片
           SendDlgItemMessage(hWnd, IDC_STATIC1, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM)hBitmap);
      }

       break;
    }

 

posted @ 2019-05-23 09:48  ltyandy  阅读(239)  评论(0编辑  收藏  举报