支持列表项添加其他控件,只是展示一个思想,代码可能有编译不过去,麻烦大家自己看情况自己修改下。
#pragma once #include <uilib.h> inline RECT SetRect(int letf, int top, int _width, int _height) { RECT rc; rc.left = left; rc.top = top; rc.bottom = top + _height; rc.right = left + _width; return rc; } inline RECT GetTextpadding(int left, int top, int right, int bottom) { RECT rc; rc.left = left; rc.top = top; rc.bottom = bottom; rc.right = right; return rc; } class myList : public CListContainerElementUI { protected: COptionUI * m_option; public: myList(LPCTSTR lpOptionText int iLineHeight) { this->SetFixedHeight(iLineHeight); m_option = new COptionUI; m_option = SetFloat(true); m_option = SetText(lpOptionText); m_option->SetNormalImage(_T("file=\'tips_check_gray.png\' dest=\'0,0,13,13\' ")); m_option->SetSelectedImage(_T("file=\'tips_check_gray.png\' dest=\'26,0,39,13\' ")); m_option->SetTextPadding(GetTextpadding(18, 5, 0, 0)); } void set_manager_ex(CPaintManagerUI * yourManager, CControlUI *yourList) { this->SetManager(managers, parent); m_option->setManager(managers, this); m_option->SetPos(SetRect(5, 5, 13, 13)); SetBkColor(0xFFFFFFFF); Add(m_option); } ~myList() { delete m_option; } };
myList * pl = new myList("", 30); pl->set_manager_ex(&m_pm, mylistControl); mylistControl->Add(pl);
原文地址:http://blog.csdn.net/qingzai_/article/details/44956849