PCL实战项目-软件界面搭建RibbonUI

目录

    • [1 Ribbon简介](#1 Ribbon简介)
    • [2 RibbonUI项目](#2 RibbonUI项目)
    • [3 编译使用](#3 编译使用)

关键词

1 Ribbon简介

Ribbon是一种以面板及标签页为架构的用户界面。相当于它是一个收藏了命令按钮和图标的面板(把命令组织成一组"标签",每一组包含了相关的命令。每一个应用程序都有一个不同的标签组,展示了程序所提供的功能。在每个标签里,各种的相关的选项被组在一起)用到ribbon风格相关产品有:Microsoft Office 2007组件,Windows 7中,画图和写字板,以及Windows 8中的资源管理器。

2 RibbonUI项目

RibbonUI 是一个轻量级、简约和优雅的 Qt 组件库,并参考 Microsoft Ribbon 样式进行设计。项目Qt6或Qt5.15.2,支持Windows、MacOS和Linux跨平台使用。个人比较喜欢这个项目,还有一个叫SARibbon,两个项目源码连接放在下方。

1.https://github.com/mentalfl0w/RibbonUI

2.https://github.com/czyt1988/SARibbon

3 编译使用

  • 安装前

    安装 Qt 6,建议通过官方在线安装程序安装 Qt 6.8.2 版本, 通过 brew 等安装可能会出现问题 。需要 Qt Quick 相关模块和 qt5compat qtshadertools qtimageformats 组件

  • 编译示例和库

    克隆并进入库文件夹

cpp 复制代码
git clone https://github.com/mentalfl0w/RibbonUI.git --recursive
cd RibbonUI
  • 创建并进入构建文件夹
cpp 复制代码
mkdir build
cd build
  • 构建
cpp 复制代码
#if you want to make a Debug build, just let -DCMAKE_BUILD_TYPE=Debug, --config Debug
# if you want a static build, add -DRIBBONUI_BUILD_STATIC_LIB=ON into command
cmake -DCMAKE_MESSAGE_LOG_LEVEL=STATUS -DCMAKE_PREFIX_PATH=/Users/runner/work/RibbonUI/Qt/6.8.2/macos -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_BUILD_TYPE=Release -GNinja ..
 # -DCMAKE_PREFIX_PATH={YOUR QT INSTALL FOLDER}
cmake --build . --target all --config Release --parallel
  • 运行或部署

在另一个系统上,您可以在构建过程后直接启动应用程序,而如果您想单击运行,则必须使用 Qt bin 目录中的 windeployqt.exe 首先在 Windows 上部署所需的库,而不是通过 Qt Creator。

cpp 复制代码
#in the build folder
cd app\release
C:\Qt\6.8.2\mingw_64\bin\windeployqt.exe --qmldir C:\Qt\6.8.2\mingw_64\qml .\RibbonUI-APP.exe
#"--qmldir" is essential.

我编译参考了作者的示例项目RibbonTemplate,编译界面如下:

参考文献

1\] [怎样才能开发出Office同款Ribbon风格界面?](https://zhuanlan.zhihu.com/p/347945032) \[2\]

相关推荐
宠..14 小时前
安装 Qt VS Tool 插件
开发语言·qt
菜鸟-0114 小时前
QT:BMS_TTL
开发语言·qt
Larry_Yanan19 小时前
Qt线程使用(一)直接继承QThread类
开发语言·c++·qt·ui
宠..20 小时前
Qt 6 详细介绍
开发语言·qt
xxp432120 小时前
Qt 多线程
开发语言·qt
一叶之秋141220 小时前
Qt中的信号与槽
qt
开始了码21 小时前
QT::键盘事件简单介绍
qt
lijiatu1008621 小时前
[C++ ]qt槽函数及其线程机制
c++·qt
i***171821 小时前
使用 Qt 插件和 SQLCipher 实现 SQLite 数据库加密与解密
数据库·qt·sqlite
遇到困难睡大觉哈哈21 小时前
HarmonyOS IPC/RPC 实战:用 ArkTS 跑通 Proxy–Stub 整条链路
qt·rpc·harmonyos·鸿蒙