天天看點

duilib教程之duilib入門簡明教程7.XML基礎類

現在大家應該對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檔案。