我想增加组合框控制的高度。增加宽度正在发生。但是当我试图增加组合框高度时它没有增加。我很清楚我想增加控制垂直高度。通常我创建的组合框控件如下。
如上图所示,以红色为边界的图像控件是组合框控件,我想增加高度。如果您可以查看下面的EDIT控件图像(注意编辑控件的大小)。与编辑控件的大小类似,我必须增加组合框控件的高度。
CString str;
CSize sz;
CDC* pDC = m_comboCtrl.GetDC();
m_comboCtrl.GetLBText(0, str);
sz = pDC->GetTextExtent(str);
m_comboCtrl.SetItemHeight(-1,50);
增加垂直高度后,控件中的文本非常小,我们如何使文本适合控件(类似于默认组合框控件中的普通文本)。但控件中的文本为如下,
任何人都可以让我知道如何使文本以控件为中心,如下图所示。上图中的文字位于顶部,但我想让文字居中标准控制中的文本。
答案 0 :(得分:3)
要增加组合框的高度,我们需要在OnInitDialog()中这样做,如下所示,
CString str;
CSize sz;
CDC* pDC = m_comboCtrl.GetDC();
m_comboCtrl.GetLBText(0, str);
sz = pDC->GetTextExtent(str);
m_comboCtrl.SetItemHeight(-1,50);//CCombobox m_comboCtrl;
这里有50个SetItemHeight表示我们术语中的y坐标现在被称为高度。在OnInitDialog()中添加上面的代码片段后,组合框看起来像(参考原始帖子,我添加了组合框的图像)增加高度后控制(图2)。
答案 1 :(得分:0)
按照http://dotnetbutchering.blogspot.com/2008/03/vc-mfc-how-to-set-combobox-dropdown.html上的说明进行操作:
在MFC设计器中
Voilà。
答案 2 :(得分:-2)
在“属性”窗口中将“类型”属性设置为“简单”