duilib环境配置以及简单入门介绍
生活随笔
收集整理的這篇文章主要介紹了
duilib环境配置以及简单入门介绍
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
內容全部為轉載:
VS2013的編譯,https://www.cnblogs.com/Alberl/p/3342030.html
duilib框架介紹,以及VS2013配置,創建工程,調試代碼部分:
https://blog.csdn.net/lanuage/article/details/52040306
https://blog.csdn.net/GG_SiMiDa/article/details/70792890
具體為:
環境配置為:
在環境變量的Path變量中添加對應的dll路徑,這樣就不需要將dll文件拷貝到自己項目的exe文件所在位置處。
創建工程,測試代碼
我這里為,創建了一個win32工程,選擇空項目,添加.cpp文件,文件內容為:
#include <DuiLib\UIlib.h> using namespace DuiLib;#ifdef _DEBUG # ifdef _UNICODE # pragma comment(lib, "Duilib_ud.lib") # else # pragma comment(lib, "Duilib_d.lib") # endif #else # ifdef _UNICODE # pragma comment(lib, "Duilib_u.lib") # else # pragma comment(lib, "Duilib.lib") # endif #endifclass CFrameWnd : public CWindowWnd { public:virtual LPCTSTR GetWindowClassName() const{return _T("FrameWnd");}virtual void OnFinalMessage(HWND hWnd){delete this;} };int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,LPTSTR lpCmdLine, int nShowCmd){// new一個窗口對象CFrameWnd* pFrame = new CFrameWnd;// 注冊窗口類、創建窗口pFrame->Create(NULL, _T("sample01"), UI_WNDSTYLE_FRAME, UI_WNDSTYLE_EX_FRAME,100, 100, 800, 600, NULL);// 顯示窗口、進入窗口消息循環pFrame->ShowModal();return 0; }顯示效果為:
duilib簡介:
國內首個開源 的directui 界面庫,它提供了一個所見即所得的開發工具——UIDesigner,它只有主框架窗口,其余的空間全部采用繪制的方式實現,所以對于控件來說沒有句柄和窗口類等內容,它通過UIDesigner工具將用戶定義的窗口保存在xml文件中,在創建窗口時讀取xml文件中的內容,來繪制相應的控件。目前有許多界面采用duilib編寫,大家可以去網上搜集相關資料。
窗口顯示前的最后一個函數為:
CWindowWnd::Create(HWND hwndParent, LPCTSTR pstrName, DWORD dwStyle, DWORD dwExStyle, int x, int y, int cx, int cy, HMENU hMenu) {if( GetSuperClassName() != NULL && !RegisterSuperclass() ) return NULL;if( GetSuperClassName() == NULL && !RegisterWindowClass() ) return NULL;m_hWnd = ::CreateWindowEx(dwExStyle, GetWindowClassName(), pstrName, dwStyle, x, y, cx, cy, hwndParent, hMenu, CPaintManagerUI::GetInstance(), this);ASSERT(m_hWnd!=NULL);return m_hWnd; } //::CreateWindowEx(...)為win32 API函數,該函數運行完即顯示窗口,總結
duilib的基本框架,下面來總結一下:
總結
以上是生活随笔為你收集整理的duilib环境配置以及简单入门介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吴恩达《机器学习》学习笔记五——逻辑回归
- 下一篇: OpenCV与图像处理学习一——图像基础