其他分享
首页 > 其他分享> > duilib自定义组件

duilib自定义组件

作者:互联网

1、先定义类

class CDetectInfoListUI : public CListUI, public IListCallbackUI

2、xml里引用

        <HorizontalLayout bkcolor="#FFE1E1E1" childpadding="10">
                <DetectInfoList bkcolor="#FFEAEAEA" bordersize="1" padding="30,10,10,10" bordercolor="#FFBABABA"  width="400" height="400" name="myList" itemshowhtml="true"  VScrollBar="true"  HScrollBar="true"/>
       </HorizontalLayout>

3、引用,重要:

class CFrameWindowWnd : public CWindowWnd, public INotifyUI,  public IDialogBuilderCallback
virtual  CControlUI* CreateControl(LPCTSTR pstrClass);

CControlUI* CFrameWindowWnd::CreateControl(LPCTSTR pstrClass)
{
    if (_tcsicmp(pstrClass, _T("DetectInfoList")) == 0)
    {
        return (m_pInfoList = new CDetectInfoListUI);
    }

    return NULL;
}

引用xml的窗体里必须要继承接口IDialogBuilderCallback,并实现里面的CreateControl,才能解析到这个控件

然后在OnPrepare里就能用了。

标签:xml,duilib,自定义,CreateControl,IDialogBuilderCallback,LPCTSTR,pstrClass,组件,public
来源: https://www.cnblogs.com/cnchengv/p/14695114.html