fengqingdan 2022-04-05 12:19 采纳率: 0%
浏览 25

CCombobox如何实现下拉框长度自适应

本人在改良一个字体控件,此控件继承CCombox,需要实现的效果是,当在编辑框输入时:
1.下拉框会自动列出与输入内容局部匹配的条目
2.下拉框长度也要随显示的条目数自适应,不可出现空白条目。

目前已实现第1点,第2点不知道该如何实现,想寻求一下帮助

已实现效果如下图:

img

第1点的实现思路是:使用CCombox的消息映射宏ON_CONTROL_REFLECT_EX(CBN_EDITUPDATE, OnCbnEditUpdate),具体实现为:

BOOL CFontNameComboBoxEx::OnCbnEditchange()
{
    CString strFontName;
    CString strText;
    GetWindowText(strText);
 
    ResetContent();
     //此处省略,获取匹配到的条目,并添加至下拉列表中
 
    ShowDropDown(TRUE);
    SetCursor(LoadCursor(NULL, MAKEINTRESOURCE(IDC_ARROW)));
    SetWindowText(strText);
    SetEditSel(strText.GetLength(), -1);
    return FALSE;
}
  • 写回答

1条回答 默认 最新

  • 关注

    更新下拉框选项前,删除所有下拉选项,再更新符合条件的选项。

    评论

报告相同问题?

问题事件

  • 修改了问题 4月5日
  • 创建了问题 4月5日

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题