【MFC】Combobox下拉框中4个选项,运行后点击下拉框选项不能全部展示出来,只能显示2个选项,需要垂直滚动条滚动显示其余选项

对比你属性设置,一模一样。为啥?

针对MFC中ComboBox下拉框显示不全的问题,可通过以下两种方式解决:

‌1.调整下拉框高度‌

在设计模式下点击ComboBox的下拉箭头,拖动出现的蓝色边框调整显示区域高度,确保能容纳所有选项。这是最直接的视觉调整方法‌。

ComboBox高度区域框出现如下 (注意下面这个虚线框是默认高度,所以只能显示2个选项,但下面这个虚线框 有时候点击鼠标不会出现,要多试几次才出现)

向下拉调整显示区域高度,

现在两个下拉框都可以 显示下来框中全部选项

‌2.代码动态设置下拉宽度‌

在对话框初始化时(如OnInitDialog)调用SetDroppedWidth和GetItemHeight计算所需高度:

csharp 复制代码
// 设置下拉列表宽度(单位:像素)
m_wndGrabMode.SetDroppedWidth(200);  
// 计算总高度 = 选项数 × 每项高度 + 边框
int nHeight = m_wndGrabMode.GetItemHeight(0) * 4 + 6; 
m_wndGrabMode.SetWindowPos(NULL, 0, 0, 宽度值, nHeight, SWP_NOMOVE | SWP_NOZORDER);
相关推荐
minji...3 小时前
C++ string类(STL简介 , string类 , 访问修改字符)
开发语言·c++
Forward♞3 小时前
Qt——文件操作
开发语言·c++·qt
十五年专注C++开发4 小时前
CMake进阶: CMake Modules---简化CMake配置的利器
linux·c++·windows·cmake·自动化构建
winds~5 小时前
【git】 撤销revert一次commit中的某几个文件
linux·c++
carver w5 小时前
MFC,C++,海康SDK,回调,轮询
开发语言·c++·mfc
芒果很香5 小时前
MFC中使用EXCEL的方法之一
excel·mfc
m0_552200826 小时前
《UE5_C++多人TPS完整教程》学习笔记43 ——《P44 奔跑混合空间(Running Blending Space)》
c++·游戏·ue5
八个程序员6 小时前
c++计算器(简陋版)
c++·游戏
mjhcsp7 小时前
C++小游戏NO.1游戏机
c++·游戏
上海迪士尼358 小时前
力扣子集问题C++代码
c++·算法·leetcode