Qt功能区:简介与安装

发布于:2025-05-15 ⋅ 阅读:(15) ⋅ 点赞:(0)

Qt 官方不支持 Ribbon 风格(Ribbon UI 风格是微软开创的,具有专利许可协议,许可协议对从构建 UI 的指令到每个按钮间的空格数都做了详细的规定。接受该协议的开发人员,必须同意严格遵循当前和未来的设计指南,并且不能用其开发与 MS Office 直接竞争的产品。

1. 功能区简介

目前,市面上关于 Ribbon for Qt 的项目,有开源的,也有商用的,数量不在少数。

项目名称 简介
QtitanRibbon 一款商用的遵循 Microsoft Ribbon UI 的组件,功能高级
SARibbon 一款轻量级的 Ribbon 控件,功能中级
fancyribbon 一款精选的 Ribbon 控件,功能初级
QtRibbonGUI 一款简单的 Ribbon-UI,功能初级
QRibbon 标准 QMenuBar 自动转换为 Ribbon 风格,思路不错,功能初级
Qt-Ribbon-Widge A Ribbon widget for Qt,功能初级
TabToolbar A small library for creating tabbed toolbars,功能初级
CbersUI QT Ribbon Plugin Framework,功能未知
qt-ribbon A ribbon bar implementation for Qt widgets applications,功能未知
wribbon Qt Ribbon library,功能未知
stripemenu Menu tipo cinta basado en Qt ( Ribbon menu Qt-based ),功能未知
ribbon SARibbon 衍生版本

QxRibbon 组件中关键的类名与其它主流的命名区别如下:

QtitanRibbon SARibbon BCGControls
RibbonMainWindow SARibbonMainWindow N/A
RibbonBar SARibbonBar CBCGPRibbonBar
RibbonPage SARibbonCategory CBCGPRibbonCategory
RibbonGroup SARibbonPanel CBCGPRibbonPanel
RibbonGallery SARibbonGallery N/A
RibbonButton SARibbonToolButton CBCGPRibbonButton
RibbonQuickAccessBar SARibbonQuickAccessBar CBCGPRibbonQuickAccessToolbar

2. SARibbon

2.1 简介

下载地址
SARibbon适用于大型软件、工业软件、复杂软件的ui,在设计时参考了MFC Ribbon接口的命名风格;界面样式参考了微软Office系列软件以及WPS软件的Ribbon界面,并结合了两者的优点。SARibbon是一个可定义多种主题风格的Ribbon控件,它能通过qss快速的定义出自己想要的主题风格.
功能:

  1. 针对Ribbon的布局和显示
  2. 支持最小化模式,ribbon只显示标签(默认双击标签会进行切换),支持上下文标签tab
  3. 支持quickAccessBar(word快速菜单),在不同布局模式下会有不同的显示效果
  4. 支持4种不同的ribbon button,普通按钮,延迟弹出菜单按钮,菜单按钮,action菜单按钮(action菜单按钮是此ribbon控件最主要解决的问题之一)
  5. 支持4种不同风格的布局样式:宽松和紧凑的三行和两行模式
  6. (Qt 样式表:Qt Style Sheets)对ribbon进行自定义设置,可实时切换主题,内置了5种不同风格的主题:win7主题,office2013主题,office2016主题,office2021主题,dark主题。
  7. 提供Gallery控件:Gallery 控件用于以某种布局方式展示一组图片、图标或者其他可视化元素,用户可以在其中浏览、选择这些元素。
    在这里插入图片描述
  8. 支持超长滚动和Option Action
  9. 提供居中对齐模式

2.2 编译与安装

采用CMake进行编译。
在Windows平台中VS2019集成了cmake的功能,可以直接在VS中进行CMake文件的操作。在使用的过程中,最好安装最新版的cmake.VS中自带的cmake编译器不是最新版本,安装最新版本后就可以将VS中的cmake编译平台进行更新。

采用CMake-gui进行编译

在这里插入图片描述再次点击“Configure”
在这里插入图片描述
点击“Generate”
在这里插入图片描述
编译后的文件变化情况对比:
在这里插入图片描述
在这里插入图片描述
在每个CMakeLists.txt文件目录下会生成VS的项目文件,打开项目文件配置后即可生成目标文件。

采用VS进行编译

在这里插入图片描述
打开根目录下的CMakeLists.txt文件,在VS中将自动完成配置。
在这里插入图片描述
右键“CMakeLists.txt”然后进行"生成"和“安装”即可。得到响应的静态库、动态库和案例展示。
在这里插入图片描述
Note:在借助第三方库再生成的动态和静态库中,最好采用编译平台直接生成。

安装与使用

详情参见VS中动态库和静态库的使用
本项目是在VS中使用,因此有些参数需要再VS项目中预先配置。

  • 公开的预定义宏
    SARibbon在编译过程中有些预定义宏,这些宏在基于visual studio的库引入是必须的
    1. SARIBBON_USE_3RDPARTY_FRAMELESSHELPER=1/0,此宏用来定义是否引入了QWindowkit库
    2. SARIBBON_ENABLE_SNAP_LAYOUT=1/0,此宏在SARIBBON_USE_3RDPARTY_FRAMELESSHELPER=1时才有用,用于定义是否开始windows11的snap layout效果

网站公告

今日签到

点亮在社区的每一天
去签到