如何增加mfc中组合框控制的高度?

时间:2015-01-26 14:11:15

标签: visual-c++ mfc

我想增加组合框控制的高度。增加宽度正在发生。但是当我试图增加组合框高度时它没有增加。我很清楚我想增加控制垂直高度。通常我创建的组合框控件如下。

enter image description here

如上图所示,以红色为边界的图像控件是组合框控件,我想增加高度。如果您可以查看下面的EDIT控件图像(注意编辑控件的大小)。与编辑控件的大小类似,我必须增加组合框控件的高度。

CString str;
CSize   sz;
CDC*    pDC = m_comboCtrl.GetDC();

m_comboCtrl.GetLBText(0, str);
sz = pDC->GetTextExtent(str);

m_comboCtrl.SetItemHeight(-1,50);

增加垂直高度后,控件中的文本非常小,我们如何使文本适合控件(类似于默认组合框控件中的普通文本)。但控件中的文本为如下,

enter image description here

任何人都可以让我知道如何使文本以控件为中心,如下图所示。上图中的文字位于顶部,但我想让文字居中标准控制中的文本。 enter image description here

3 个答案:

答案 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设计器中

  1. 单击下拉控件中的箭头:将显示调整大小矩形。
  2. 调整下拉菜单的高度。

Voilà。

答案 2 :(得分:-2)

在“属性”窗口中将“类型”属性设置为“简单”