关于duilib的介绍就不多讲了,一来不熟,二来小伙伴们想必已经对比了多个界面库,也无需赘述。下面进入正题: 不看广告看疗效! 已有众多知名公司采用duilib做为界面库,如华为网盘、金山快盘、酷我音乐、爱奇艺视频、百度杀毒、百度卫士、百度管家等一系列产品。而duilib自己提供的Demo有QQ、QQ旋风、360等等。下面是一部分截图:
看着上面的界面小伙伴们是不是已经迫不及待了呢?来看一看Hello World吧:新建一个空的win32项目,如图:
虽然很丑,但是完成了第一步,接下来我们要开始加载duilib相关文件了,配置这里不多说,如果未配置请参看这篇VS2010 Win32开发应用——Duilib简单配置!
在stdafx.h文件中添加以下代码
第一步就完成了,后面继续学习事件和其它控件,以及皮肤的使用。
工程下载:MyApp
duilib工程:duilibv1.1.7z
如果要发布程序的话,需要附带几个dll库,否则没有安装过运行环境的电脑是跑不起来的。
看着上面的界面小伙伴们是不是已经迫不及待了呢?来看一看Hello World吧:新建一个空的win32项目,如图:
// MyApp.cpp : 定义应用程序的入口点。 // #include "stdafx.h" #include "MyApp.h" #define S(s) _T(s) //定义一个宏 int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { MessageBox(NULL,S("Hello,World!"),S("Title"),MB_OK); return 0; }运行效果:
虽然很丑,但是完成了第一步,接下来我们要开始加载duilib相关文件了,配置这里不多说,如果未配置请参看这篇VS2010 Win32开发应用——Duilib简单配置!
在stdafx.h文件中添加以下代码
#includecpp代码//一定要加此头文件,uirichedit.h 报错:error C2143: 语法错误 : 缺少“;”(在“*”的前面) #include "DuilibUIlib.h" using namespace DuiLib; #ifdef _DEBUG #pragma comment(lib, "DuiLib_d.lib")//debug #else #pragma comment(lib, "DuiLib.lib")//release #endif
// MyApp.cpp : 定义应用程序的入口点。 // #include "stdafx.h" #include "MyApp.h" #define S(s) _T(s) //定义一个宏 class CDuiFrameWnd : public CWindowWnd, public INotifyUI { public: virtual LPCTSTR GetWindowClassName() const { return S("DUIMainFrame"); } virtual void Notify(TNotifyUI& msg) {} virtual LRESULT HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) { LRESULT lRes = 0; if( uMsg == WM_CREATE ) { CControlUI *pWnd = new CButtonUI; pWnd->SetText(S("Hello World")); // 设置文字 pWnd->SetBkColor(0xFF00FF00); // 设置背景色 m_PaintManager.Init(m_hWnd); m_PaintManager.AttachDialog(pWnd); return lRes; } if( m_PaintManager.MessageHandler(uMsg, wParam, lParam, lRes) ) { return lRes; } return __super::HandleMessage(uMsg, wParam, lParam); } protected: CPaintManagerUI m_PaintManager; }; int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { CPaintManagerUI::SetInstance(hInstance); CDuiFrameWnd duiFrame; duiFrame.Create(NULL, S("DuiLib程序"), UI_WNDSTYLE_FRAME, WS_EX_WINDOWEDGE); duiFrame.ShowModal(); return 0; }运行效果
第一步就完成了,后面继续学习事件和其它控件,以及皮肤的使用。
工程下载:MyApp
duilib工程:duilibv1.1.7z
如果要发布程序的话,需要附带几个dll库,否则没有安装过运行环境的电脑是跑不起来的。
收藏的用户(0) X
正在加载信息~
推荐阅读
最新回复 (0)
站点信息
- 文章2312
- 用户1336
- 访客11622217
每日一句
Compliment yourself daily.
每天夸自己一句。
每天夸自己一句。
How to Ungroup Icons on Windows 11 Taskbar With a Registry Hack (and 2 More Ways)
反编译修改class文件变量
如何在大学成为一名优秀的程序员?
VMware NAT端口映射外网访问虚拟机linux
ubuntu下提取DSDT SSDT
使用HTML和CSS设计磨砂玻璃效果
解决android studio 4.4使用javah失败
vscode使用eslint自动代码格式化
c++浮点运算能力附安卓版
【源码】两种仪表盘
P2P中NAT之间的打洞可能性
jQuery的load方法Cannot read property 'indexOf' of undefined
【开源Roguelike游戏】素地牢源码
新会员