C++界面库---Duilib最新集合[包含源码、例子、简单入门文档]


-
开放,共享,惠众,共赢--Duilib的宗旨,国内首个开源的DirectUI界面库--DuiLib,免费开放是Duilib的出发点,崇尚完美是Duilib的动力,共赢互惠是Duilib追求的目标,年轻活力是Duilib最大的资本... DuiLib开发语言为C++,采用纯Win32API,无其他额外依赖;支持图片等资源的压缩,方便携带传播;目前支持的开发平台为vc6-vc10,Demo比较丰富,非常容易上手,遵循BSD协议,可无限制地用于个人、商业软件中... 下载Tortoise Svn,访问官方下载地址:http://duilib.googlecode.com/svn/trunk/可获取最新代码。 官方主页:http://www.duilib.com/
-
2014-12-19
-
2014-05-14
-
2014-05-03
-
2014-04-01
-
2014-01-03
-
2013-11-29
-
2013-07-29
-
2013-06-06
-
2013-05-16
-
2013-04-09
1.56MB
duilib界面库20161116
2016-11-16更新为VC2015编译的duilib,持续重构代码,使用最新的C++14的语法。
2.87MB
duilib入门简明教程
2018-07-26相似内容的链接有的已经失效,有的下载后出现乱码,最新整理duilib内容,超链接均可用,一同分享同时向原作者致敬。
1.53MB
Duilib做的登录窗口
2012-10-16Duilib来实现的登录窗口,VS2010开发平台。 功能不多,只为理解程序与xml。
577KB
duilib官方帮助文档
2016-04-18duilib官方帮助文档
14.95MB
DUILib最新版
2019-03-01DUILib最新版代码,包含全部Demo程序,360SafeDemo,QQDemo,MenuDemo
duilib库可以用于商业项目吗?_course
2020-05-25想将duilib库用于商业项目,不知道行不行?是完全免费的吗?
15.17MB
Duilib最新界面库(完整带demo)
2015-01-26Duilib最新完整界面库,带360、QQ、List、Menu等众多Demo。
2.64MB
duilib安装界面制作
2018-10-07duilib 自己制作的安装界面,各种情况考虑,并自定义progress控件
1.16MB
DUIlib Demo
2019-02-19duilib demo界面开发实例
VC++与duilib相关的问题,程序一直报错,我不知道是哪里有问题_course
2018-07-02上代码,调试到duiFrame.Create(NULL, _T("DUIWnd"), WS_VISIBLE | WS_POPUP, WS_EX_WINDOWEDGE);这一行还没有报错,然后再下一行就显示错误了。 报错显示Debug Assertion Failed #pragma once #include <UIlib.h> #include <string.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 #endif struct station{ char StationName[13]; char* pOption; char* pLabel; }; enum StopStationState { NotArrive,// 未到站 STOPED,// 已到站 WillArrive,// 将到站 }; class CDuiFrameWnd : public WindowImplBase { public: virtual LPCTSTR GetWindowClassName() const { return _T("DUIMainFrame"); } virtual CDuiString GetSkinFile() { return _T("Qtitle.xml"); } virtual CDuiString GetSkinFolder() { return _T(""); } //duilib窗口的初始化函数 void InitWindow() { // SendMessage(WM_SYSCOMMAND, SC_MAXIMIZE, 0); //窗口的最大化 //struct station cStation = {"佛主岭","Fontc1","surebtn"} ,cStation1,cStation2,cStation3,cStation4,cStation5,cStation6; struct station cStation[13] = {{"佛主岭","Fontc1","surebtn"},{"高新五路","Fontc2","surebtn"},{"高新四路","Fontc3","surebtn"},{"流芳园大街","Fontc4","surebtn"}, {"工程大学","Fontc5","surebtn"},{"光谷大道","Fontc6","surebtn"}}; //strcpy(cStation.StationName,"佛主岭"); CButtonUI* p_surebtn = static_cast<CButtonUI*>(m_pm.FindControl(_T("surebtn"))); //这里获取到的指针可能是空的,可以断点看看 CComboUI* pAccountCombo = static_cast<CComboUI*>(m_pm.FindControl(_T("StationMess"))); CEditUI* pAccountEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("accountedit"))); //指针判断,如果指针为空,直接操作会崩溃?所以都需要判断下,程序健壮性 if(pAccountCombo && pAccountEdit)pAccountEdit->SetText(pAccountCombo->GetText()); pAccountEdit->SetFocus(); } void SetStation(char* station, bool bOpenDoor, StopStationState StationState, bool bShowStopStationPage) { //btnopenDoor.Selected(); //COptionUI* m_Opendoor = static_cast<COptionUI*>(m_pm.FindControl(_T("OpenDoor"))); //COptionUI* m_ShowPage = static_cast<COptionUI*>(m_pm.FindControl(_T("Gloa2"))); //m_Opendoor->Selected(bOpenDoor); //m_ShowPage->Selected(bShowStopStationPage); } void OnPrepare(){ CComboUI* pStationCombo = static_cast<CComboUI*>(m_pm.FindControl(_T("StationMess"))); } virtual void Notify(TNotifyUI& msg) { if(msg.sType == _T("click")) { if(msg.pSender->GetName() == _T("p_surebtn")) { COptionUI* pControl = static_cast<COptionUI*>(m_pm.FindControl(_T("StationChoice"))); } } else if(msg.sType == _T("itemselect")) { if(msg.pSender->GetName() == _T("StationMess")) { //代码有问题,m_pm未初始化??? CComboUI* pAccountCombo = static_cast<CComboUI*>(m_pm.FindControl(_T("StationMess"))); pAccountCombo->GetText(); } } } public: CPaintManagerUI m_pm; private: CButtonUI* p_surebtn; }; int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { CPaintManagerUI::SetInstance(hInstance); CDuiFrameWnd duiFrame; duiFrame.Create(NULL, _T("DUIWnd"), WS_VISIBLE | WS_POPUP, WS_EX_WINDOWEDGE); duiFrame.CenterWindow(); duiFrame.ShowModal(); return 0; }
-
学院
Oracle_11g_Linux到Linux_DataGuard部署
Oracle_11g_Linux到Linux_DataGuard部署
-
学院
2021年软考系统规划与管理师--论文写作精讲视频课程
2021年软考系统规划与管理师--论文写作精讲视频课程
-
博客
WebSocket研究笔记-抓包分析
WebSocket研究笔记-抓包分析
-
学院
《Linux 命令简介》<Linux核心命令系列Series> <1.
《Linux 命令简介》<Linux核心命令系列Series> <1.
-
博客
jquery如何使用滚动条监听事件
jquery如何使用滚动条监听事件
-
学院
MySQL 事务和锁
MySQL 事务和锁
-
学院
MySQL 触发器
MySQL 触发器
-
下载
LT1085CM Datasheet(数据表)
LT1085CM Datasheet(数据表)
-
学院
P1Python100练从入门到入土系列
P1Python100练从入门到入土系列
-
博客
23、CSS3
23、CSS3
-
学院
Wireshark抓包入门到精通实战教程
Wireshark抓包入门到精通实战教程
-
下载
写代码常见问题.txt
写代码常见问题.txt
-
学院
MySQL 设计基础(数据库概论、初探)
MySQL 设计基础(数据库概论、初探)
-
博客
计算书费
计算书费
-
博客
day08 包机制
day08 包机制
-
下载
名词解释经验分享.docx
名词解释经验分享.docx
-
下载
LMR62014 升压稳压芯片datasheet
LMR62014 升压稳压芯片datasheet
-
学院
CCNA_CCNP 思科网络认证 通过 GNS3 配置 CISCO 思
CCNA_CCNP 思科网络认证 通过 GNS3 配置 CISCO 思
-
下载
显卡显存测试工具nv mats.zip
显卡显存测试工具nv mats.zip
-
下载
用硬盘音圈电机DIY摇摆显示钟.docx
用硬盘音圈电机DIY摇摆显示钟.docx
-
博客
合并WOS文献数据,并对关键词进行词频分析_Python实践
合并WOS文献数据,并对关键词进行词频分析_Python实践
-
下载
DIR605_B1_2.02原厂固件.zip
DIR605_B1_2.02原厂固件.zip
-
下载
lm2678 5A DC-DC.pdf
lm2678 5A DC-DC.pdf
-
博客
2021/3/8 失眠记录一下面试问题
2021/3/8 失眠记录一下面试问题
-
下载
LibevenTemplate.zip
LibevenTemplate.zip
-
博客
2021-03-08
2021-03-08
-
博客
配对碱基链
配对碱基链
-
下载
sunloginclient_ubuntu20.04 版_amd64.deb
sunloginclient_ubuntu20.04 版_amd64.deb
-
博客
Java学习第十九天——反射、类加载器(ClassLoader)、构造器(Constructor)
Java学习第十九天——反射、类加载器(ClassLoader)、构造器(Constructor)
-
下载
20四级词汇讲义.pdf
20四级词汇讲义.pdf