描述:
我用atl向导作了一个wtl工程,想在里面加了一个listview,然后,想要自画,就是不同的行显示不同的颜色,可以
REFLECT_NOTIFICATIONS()在复合控件中,然后我不清楚在listview这一边怎么办,
class COwnerDrawnListViewCtrl : public CWindowImpl<TBase, CListViewCtrl>,
public COwnerDraw<TBase>
{
public:
BEGIN_MSG_MAP(COwnerDrawnListViewCtrl)
CHAIN_MSG_MAP_ALT(COwnerDraw<TBase>,1)//, 1
DEFAULT_REFLECTION_HANDLER()
END_MSG_MAP()
}
正常来讲,应该在atlframe.h中
BEGIN_MSG_MAP(COwnerDraw< T >)
MESSAGE_HANDLER(WM_DRAWITEM, OnDrawItem)
MESSAGE_HANDLER(WM_MEASUREITEM, OnMeasureItem)
MESSAGE_HANDLER(WM_COMPAREITEM, OnCompareItem)
MESSAGE_HANDLER(WM_DELETEITEM, OnDeleteItem)
ALT_MSG_MAP(1)
MESSAGE_HANDLER(OCM_DRAWITEM, OnDrawItem)
MESSAGE_HANDLER(OCM_MEASUREITEM, OnMeasureItem)
MESSAGE_HANDLER(OCM_COMPAREITEM, OnCompareItem)
MESSAGE_HANDLER(OCM_DELETEITEM, OnDeleteItem)
END_MSG_MAP()
的这一句到
MESSAGE_HANDLER(OCM_DRAWITEM, OnDrawItem)
到OnDrawItem函数,可是没有,因为发来的是Notifition消息.
是不是跟NM_CUSTOMDRAW有关???
哪位曾经作过这方面的工作的人说一下.
能用MFC实现也行.只要能达到不同的行不同的颜色的一个listview就成.
您可能想查找下面的文章:
- 看了一下WTL,对这个代码看不懂
- 要用atl写个控件,涉及到界面的,怎么将wtl和atl结合起来用呐?用wtl来做控件的界面
- 在ATL中使用WTL中的CFileDialog实现预览功能出现的不刷新问题,高手进
- 使用WTL库,编译提示“cannotopenincludefile"atlresh"”,这是怎么回事?
- WTL能否用于ATL做COM组件的界面?需要注意什么?
- WTL中,怎么改变lineto画线的颜色和粗细?
- WTL问题,MainFrame加一个Destory响应怎么会这样
- 请大家帮忙看看这个:关于wtl
- WTL,CCodePageCombo继承CComboBoxT<ATL::CWindow>类,需要响应下拉菜单CloseUp的消息
- WTL下如何添加Mediaplayer控件