DUIThink 编译教程
1 编译
1.1 安装源码
1.1.1 请从 github 下载代码,clone 和 zip 都行,并下载下方的界面设计器 DTDesigner 设计器。
1.2 安装编译环境
1.2.1 下载一个 Visual Studio,并安装“使用 C++ 的的桌面开发”。
1.3 设置编译选项
1.3.1 打开文件夹中的后缀为 sln 的文件,打开后右键“解决方案”,点击“属性”;
1.3.2 找到“配置属性”-“配置”,打开,将“配置”选项修改为“Debug_Unicode”,“平台”选项根据自己的系统选择;
1.3.3 确保项目“DUIThink.2017”、项目“MMHelper.2017”的配置为“Debug_Unicode”,项目“tinyxml2.2017”的配置为“Debug_Unicode_Static”,关闭,回到上一级界面;
1.3.4 分别右键三个项目,点击“属性”;
1.3.5 找到“配置属性”-“配置”,打开,修改“Windows SDK版本”为你所使用的 Windows 版本,修改“平台工具集”为你所使用的 Visual Studio 版本。配置完成后,点击“确定”,回到上一级界面;
1.3.6 右键任一项目,点击“生成”,待“输出”界面显示如下内容时(========== 生成: 3 成功,0 失败,3 最新,0 已跳过 ==========
),即为编译成功;
1.3.7 Release 版本同理;
1.3.8 请将编译成功的库整体复制到 C:/Program Files
中。
2 新建项目
2.1 创建项目
2.1.1 打开 Visual Studio ,选择“创建新项目”,选择“ Windows 桌面应用程序”;
2.1.2 创建项目后,根据自己的需求设计代码……
3 调用
3.1 修改头文件
3.1.1 创建项目后,在自动生成的 framework.h
文件的最下面添加这一坨↓
#include "C:/Program Files/DUIThink/DUIThink/DUIThinkHead.h"
#ifdef _WIN64
# ifdef _DEBUG
# pragma comment(lib, "C:/Program Files/DUIThink/lib/MMHelper.201764D.lib")
# pragma comment(lib, "C:/Program Files/DUIThink/lib/DUIThink.201764D.lib")
# pragma comment(lib, "C:/Program Files/DUIThink/lib/svg64.lib")
# else
# pragma comment(lib, "C:/Program Files/DUIThink/lib/MMHelper.201764.lib")
# pragma comment(lib, "C:/Program Files/DUIThink/lib/DUIThink.201764.lib")
# pragma comment(lib, "C:/Program Files/DUIThink/lib/svg64.lib")
# endif
#else
# ifdef _DEBUG
# pragma comment(lib, "C:/Program Files/DUIThink/lib/MMHelper.2017D.lib")
# pragma comment(lib, "C://Program Files/DUIThink/lib/DUIThink.2017D.lib")
# pragma comment(lib, "C:/Program Files/DUIThink/lib/svg.lib")
# else
# pragma comment(lib, "C:/Program Files/DUIThink/lib/MMHelper.2017.lib")
# pragma comment(lib, "C:/Program Files/DUIThink/lib/DUIThink.2017.lib")
# pragma comment(lib, "C:/Program Files/DUIThink/lib/svg.lib")
# endif
#endif
#include "../项目名称(需要自己修改).DuiProj/ResourceCtrlID.h"
然后我们去做界面。
3.2 创建界面文件
3.2.1 打开界面设计器,点击“打开项目”,找到刚才建立的项目文件夹下的 sln 文件;
3.2.2 右键,新建 Dlg,随意设计界面;
3.2.3 右键,选择“添加类”;
3.2.4 把新建的头文件添加到你的主函数文件和 framework.h
文件里;
3.2.5 修改主文件为↓
// 主文件.cpp : 定义应用程序的入口点。
#include "framework.h"
#include "主文件对应的头文件.h"
#include "你刚添加的界面文件的头文件"
int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
_In_opt_ HINSTANCE hPrevInstance,
_In_ LPWSTR lpCmdLine,
_In_ int nCmdShow) {
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
// TODO: 在此处放置代码。
CDUIGlobal::GetInstance()->Init(hInstance);
CDUIGlobal::GetInstance()->SetDpi(CMMDpi::GetDpiOfMainMonitor());
CDUIGlobal::GetInstance()->LoadProjectFromFile(_T("前面是你的项目的绝对路径(因为相对路径会炸)/test.DuiProj/test.DuiProj"));
你刚添加的类 类的实例对象;
类的实例对象.DoModal();
CDUIGlobal::GetInstance()->UnInit();
}
然后要什么自己写去。
4 运行
4.1 修改配置
4.1.1 右键项目,点击“属性”;
4.1.2 找到“C/C++”-“预处理器”,打开,在“预处理器定义”选项中添加 _CRT_SECURE_NO_WARNINGS
;
4.1.3 找到“C/C++”-“命令行”,打开,在“其他选项”中添加 /D_CRT_SECURE_NO_WARNINGS
。配置完成后,点击“确定”,回到上一级界面;