duilib入门简明教程 -- XML基础类(7)

  现在大家应该对XML描述界面不那么陌生了,那么我们做进一步介绍。
  前面的教程我们写了很多代码,为的是让大家了解下基本流程,其实duilib已经对常用的操作做了很好的包装,正式使用时无需像前面的教程那样写那么多代码,下面我们就来看看XML的包装类WindowImplBase:
  WindowImplBase类是一个duilib的基础框架类,封装了常用操作,以方便大家使用。 它是以XML作为界面描述的,所以用它的时候,我们必须将界面描述写到XML里。
  下面将是我们第三次实现Hello World程序~O(∩_∩)O~
class CDuiFrameWnd : public WindowImplBase
{
public:
    virtual LPCTSTR    GetWindowClassName() const   {   return _T("DUIMainFrame");  }
    virtual CDuiString GetSkinFile()                {   return _T("duilib.xml");  }
    virtual CDuiString GetSkinFolder()              {   return _T("");  }
};

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
{
    CPaintManagerUI::SetInstance(hInstance);

    CDuiFrameWnd duiFrame;
    duiFrame.Create(NULL, _T("DUIWnd"), UI_WNDSTYLE_FRAME, WS_EX_WINDOWEDGE);
    duiFrame.CenterWindow();
    duiFrame.ShowModal();
    return 0;
}

  

  关键代码才10行左右,是不是更简单了呢?  后面的教程将会进一步介绍WindowImplBase的使用及功能~

  注意:由于_tWinMain函数也基本不会变动,所以如果没有改动,后面的教程也不再列出这些代码,因为后面的教程基本上只需要改动CDuiFrameWnd 类以及XML文件。

原文地址:https://www.cnblogs.com/hpze2000/p/3372424.html