本文介绍了如何在CMFCListCtrl中更改defaultt排序箭头?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好!
我有一个小问题。
我一直在寻找改变的解决方案在CMFCListCtrl中排序标题的箭头。我在msdn
Hi everyone!
I have small question.
I was looking for solution to change sort arrows of header in CMFCListCtrl. And I found only
post on msdn
CMFCHeaderCtrl::OnDrawSortArrow
上发现只发布了
,仅此而已。但是我不知道如何使用它。
实际上我有这个箭头的图标。
谢谢
and nothing more. But I don't know how to use it.
And actually I have icon for this arrows.
Thank you
推荐答案
// hIconAsc and hIconDes are the HICON values for Ascending and Descending icons
// Set it once
m_imgOrder.Create(16, 16, ILC_MASK, 2, 2);
m_imgOrder.Add(hIconAsc);
m_imgOrder.Add(hIconDes);
GetHeaderCtrl()->SetImageList(&m_imgOrder);
此函数将从图像中绘制自己的图标你创建的列表:
This function will draw your own icons from the Image list you have created:
void CMyListCtrl::DisplayHeaderOrder(int nIndex, BOOL bAsc)
{
HD_ITEM curItem = {0};
curItem.mask = HDI_IMAGE | HDI_FORMAT;
GetHeaderCtrl()->GetItem(nIndex, &curItem);
curItem.mask = HDI_IMAGE | HDI_FORMAT;
curItem.iImage = bAsc ? 0 : 1;
curItem.fmt = HDF_LEFT | HDF_IMAGE | HDF_STRING|HDF_BITMAP_ON_RIGHT;
GetHeaderCtrl()->SetItem(nIndex, &curItem);
}
这篇关于如何在CMFCListCtrl中更改defaultt排序箭头?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!