文章目录[隐藏]

  • 前言
  • SOUI 简介
  • SOUI 编译方法
  • SOUI 下载地址
  • SOUI Demo 下载地址

前言

今天使用 PDown 时发现这个软件使用SOUI库,于是查了一些,先查个眼。

SOUI 简介

SOUI是目前为数不多的轻量级可快速开发 window 桌面程序开源 DirectUI 库.其前身为 Duiengine,更早期则是源自于金山卫士开源版本 UI 库 Bkwin.经过作者多次开发维护升级后得此库.
SOUI其寓意为"瘦 UI" "UI,just so so!",目的就是能够快速开发,并且在产品发布局时不需要携带其它额外的第三方依赖库,高度精简及集中;模块化使得渲染模块,图片解码模块,资源
打包压缩模块得以清晰分离,更能够高度的自定义.UI 解析目前可采用的是 XML 布局,便于理解各控件之间的层级关系及其自身的属性设置.目前已有很多成功的商业产品,深受广大开发者及
企业的青睐。

SOUI 编译方法

  • SOUI提供了多种编译方式包括 qmake,cmake,nmake 等等.我们推荐使用 qmake 方式生成符合自己的 Visual Studio 版本项目工程文件,当然,如果你有兴趣也可以尝试 cmake 与 nmake 两种方式
  • qmake(推荐)

    使用 git 摘取代码后,进入代码根目录,双击运行”build.bat”

    • 1.选择编译版本[1=x86;2=x64;3=x86+x64]:选择需要编译的 cpu 架构(eg:1 则表示生成 win32 的可执行文件)
    • 2.选择开发环境[1=2008;2=2010;3=2012;4=2013;5=2015;6=2017;7=2005]:选择对应的 Visual Studio 版本(eg:1 表示选择使用 Visual Studio 2008)注意SOUI至少需要 Visual Studio 2008 SP1 及以上的 Visual Studio 版本
    • 3.选择SOUI编译模式[1=全模块 DLL;2=全模块 LIB;3=内核 LIB,组件 DLL(不能使用 LUA 脚本模块)]:选择生成内核的文件方式(eg:1 表示所生成的内核文件及组件均为 dll)
    • 4.选择字符集[1=UNICODE;2=MBCS]:(推荐选 1)
    • 5.将 WCHAR 作为内建类型[1=是;2=否]:(推荐选 1)
    • 6.选择 CRT 链接模式[1=静态链接(MT);2=动态链接(MD)]:(根据自大项目需求选择)
    • 7.是否为 release 版本生成调试信息[1=生成;2=不生成]:(根据自大项目需求选择)
    • open[o], compile[c] "soui.sln" or quit(q) [o,c or q]?输入英文字母 o 表示打开工程项目,c 表示直接编译 debug 与 release,q 表示直接退出当前窗口
  • nmake(目前仅支持编译成 dll 形式)

    • 打开编译工具命令控制台窗口,输入”nmake”,默认生成 x86 release 的 soui 内核依赖与两个渲染组件(gdi 各 skia) 图片解码组件为 png 还有 demo 运行程序,CRT 为动态链接
    • 其它额外编译参数如下:
      • nmake TYPE=Debug 表示生成 x86 debug 模式
      • nmake ABI=x64 表示生成 x64 的 release 模式,如果需要 debug 模式在后面增加 TYPE=Debug 即可
      • nmake CRT=-MT 表示静态链接 CRT
  • cmake

    • 从 cmake 官网下载 cmake 的最新 Release 版本,这里以 cmake-3.15.4-win64-x64.zip 举例。
    • 将 cmake-3.15.4-win64-x64.zip 解压后运行 bin 目录下的 cmake-gui.exe。
    • 选择 soui 源码目录和 cmake 临时文件生成目录,点击 Configure。 
  • 弹出临时文件目录不存在,是否创建?选择 Yes。
  • 选择需要生成的 VS 版本(如果未安装会生成失败,根据实际情况选择)和需要生成的编译版本(Win32\x64),点击 Finish。
  • 根据需要选择生成方式:内核和组件模块的(静态链接或动态链接);是否使用 CRT;Unicode 或多字节;点击 Generate 开始生成。
  • 生成完毕,显示”Generating done”,此时点击 Open Project 打开项目(也可以双击 cmake 临时文件生成目录中找到 sln 文件打开) 
  • 在 VS 中编译,编译完成后,在 soui 源码的 bin 目录下可以找到生成出来的 dll(或 lib)和 exe。 

SOUI 下载地址

  • 国内 Git 下载站点
  • 国外 Git 下载站点

SOUI Demo 下载地址

https://github.com/soui3-demo

http://www.taodudu.cc/news/show-2185969.html

相关文章:

  • SOUI中View类型的控件数据更新的例子
  • SOUI消息订阅事件实例
  • SOUI编译
  • 使用 SOUI 开发高 DPI 桌面应用程序
  • SOUI中几个view视图控件的基本使用
  • MFC中使用SOUI的窗口示例
  • SOUI笔记
  • SOUI控件的自绘和消息处理
  • soui中展示图片
  • soui 设置边框_第四篇:SOUI资源文件组织
  • 关于SoUI界面库处理从WM_LBUTTONUP到按钮事件的消息路由过程分析
  • Soui Button学习一
  • SOUI知识点小结2
  • soui 设置边框_第三十四篇:在SOUI中使用异步通知
  • SOUI皮肤浅谈
  • SOUI Text控件不同状态设置不同颜色的方法
  • soui 设置边框_UI神器-SOUI
  • soui 设置边框_SOUI入门
  • SOUI使用总结知识汇总.
  • SOUI使用过程知识点小结1
  • Soui教程_v20201024
  • Java 应用SAXReader 解析网络地址 XML
  • 使用SAXReader读取xml文件时的路径问题
  • 通过SAXReader解析XML
  • xml解析工具 SAXReader 的使用
  • SAXReader解析xml文件
  • 使用SAXReader以XML方式解析excel
  • saxreader java_SAXReader saxReader = new SAXReader();来解析xml文件
  • DOM SAXReader
  • java saxreader 字符串_解析XML文件(字符串)的两种方法-----SAXReader 与 DocumentHelper...

C++开源DirectUI库SOUI简介相关推荐

  1. C++ DirectUI库 SoUI

    SOUI是什么?SOUI是一个C++ DirectUI库. 虽然DirectUI不是什么新技术,但是要把UI做好,DirectUI确实是目前为止最有效的解决方案. SOUI不是一个新项目,它是基于作者 ...

  2. android lib 界面库,全开源C++ DirectUI 界面库SOUI 3.0更新

    全开源C++ DirectUI 界面库SOUI 3.0更新 发布时间:2019-08-04 16:10, 浏览次数:1077 , 标签: DirectUI SOUI 从2019.5.22开始,SOUI ...

  3. apache madlib 教程_Apache顶级开源项目——机器学习库MADlib简介与应用实例

    原标题:Apache顶级开源项目--机器学习库MADlib简介与应用实例 Apache MADlib是Pivotal与UCBerkeley合作的一个开源机器学习库,提供了精确的数据并行实现.统计和机器 ...

  4. 纠删码开源软件Jerasure库接口简介及性能测试

    原文见链接基于柯西矩阵的Erasure Code技术详解 原文见链接基于范德蒙矩阵的Erasure code技术详解 原文见链接一个IO的传奇一生(12)-- 磁盘阵列1 原文见链接Microsoft ...

  5. 【深度学习】基于Torch的Python开源机器学习库PyTorch卷积神经网络

    [深度学习]基于Torch的Python开源机器学习库PyTorch卷积神经网络 文章目录 1 CNN概述 2 PyTorch实现步骤2.1 加载数据2.2 CNN模型2.3 训练2.4 可视化训练 ...

  6. 【深度学习】基于Torch的Python开源机器学习库PyTorch概述

    [深度学习]基于Torch的Python开源机器学习库PyTorch概述 文章目录 1 PyTorch简介 2 环境搭建 3 Hello world!3.1 Tensors (张量)3.2 操作 4 ...

  7. Java开源——常见J2EE框架简介

    Java开源--常见J2EE框架简介 Spring Framework Spring是一个解决了许多在J2EE开发中常见的问题的强大框架. Spring提供了管理业务对象的一致方法并且鼓励了注入对接口 ...

  8. 【流媒體】jrtplib—VS2010 下RTP开源协议库JRTPLIB3.9.1编译

    [流媒體]jrtplib-VS2010下RTP开源协议库JRTPLIB3.9.1编译 SkySeraph Apr 7th 2012 Email:skyseraph00@163.com 一.JRTPLI ...

  9. Py之GraphLab:graphlab库的简介、安装、使用方法之详细攻略

    Py之GraphLab:graphlab库的简介.安装.使用方法之详细攻略 目录 graphlab库的简介 1.GraphLab是什么 2.GraphLab的五大特点 3.为什么需要GraphLab ...

  10. Py之scikit-learn:机器学习Sklearn库的简介、安装、使用方法(ML算法如何选择)、代码实现之详细攻略

    Py之scikit-learn:机器学习Sklearn库的简介.安装.使用方法.代码实现之详细攻略 目录 scikit-learn的简介 scikit-learn的安装 scikit-learn的使用 ...

最新文章

  1. python 字符串 转 dict
  2. 高并发之——创建线程池居然有这么多方式...
  3. OSSIM系统的安装教程(超详细)
  4. 浅析校园安防视频监控设备发展趋势
  5. 淘宝姐姐不要过滤掉js我们还是好朋友
  6. 评估指标:ROC,AUC,Precision、Recall、F1-score
  7. android 引用jar的r文件,正确的方法来处理Android库的ant构建. Build从jar文件中排除R.class...
  8. 【工具】ubuntu下在百度云文件
  9. 离线安装Cloudera Manager 5和CDH5(最新版5.9.3) 完全教程(七)界面安装
  10. log4j与commons-logging,slf4j的关系
  11. 文档声明和HTML样式表
  12. Windows 系统补丁管理策略
  13. python爬虫requests源码链家_python爬虫——爬取链家房价信息(未完待续)
  14. 载入页面时与服务器的连接被重置。_快捷指令打不开怎么回事?安装快捷指令无法载入的解决办法...
  15. 提高Java开发效率,Idea必装的几款插件
  16. Linux命令解释之passwd
  17. 字符串常量强制转换为字符指针
  18. 2021年茶艺师(中级)考试内容及茶艺师(中级)考试总结
  19. Deep Learning论文翻译(Nature Deep Review)
  20. Bugku-web-秋名山老司机

热门文章

  1. 判断网络问题不只ping还有tracert,以及tracert原理
  2. python参考文献及其出版社_金融工程及其Python应用(高等院校财政金融专业应用型教材) 正版 朱顺泉 9787302510758_朱顺泉_孔夫子旧书网...
  3. word打印高清图片
  4. 转:Delphi开发经验谈
  5. matlab-液压阀仿真
  6. 没有你不会的CAD?CAD知识整理上集
  7. 0_freeCAD_介绍,下载,语言设置
  8. PHP:解析url和查询参数query
  9. 春节怎么抢红包,python一招告诉你再也不会错过微信红包
  10. 大牛直播十万个为什么