改变列表框的宽度
在ComboBox中改变列表框的宽度
2004-2-9加入 来自未知 作者贾旭滨(译)
我们经常会使用到组合框,而组合框是是有2种功能的--下拉和列表。一般情况下,列表框的宽度和选择框是一样宽的,但是我们有些时候确实很需要把列表框的宽度变大,一便让我们能更好的看我们要选的东西。
为了能有这个功能,我写了下面的这个函数。首先得在你的对话框中添加一个的WM_CTLCOLOR的消息句柄,或者使用CComboBox的继承类,而且在其中添加下面的代码:
HBrush tvisualcombo::onctlcolor(CDC* pdc, CWND* pwnd, UINT nctlcolor)
{
HBrush hbr = ccombobox::onctlcolor(pdc, pwnd, nctlcolor);
switch (nctlcolor)
{
case ctlcolor_edit:
break;
case ctlcolor_listbox:
if (listwidth > 0)
{
// new width of a listbox is defined
CRect rect;
pwnd->GetWindowRect(
搜索更多相关主题的帖子:
宽度 列表