当前位置: 首页 > news >正文

Qt功能区:简介与安装

Qt功能区

  • 1. 功能区简介
  • 2. SARibbon
    • 2.1 简介
    • 2.2 编译与安装
      • 采用CMake-gui进行编译
      • 采用VS进行编译
      • 安装与使用

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-WidgeA Ribbon widget for Qt,功能初级
TabToolbarA small library for creating tabbed toolbars,功能初级
CbersUIQT Ribbon Plugin Framework,功能未知
qt-ribbonA ribbon bar implementation for Qt widgets applications,功能未知
wribbonQt Ribbon library,功能未知
stripemenuMenu tipo cinta basado en Qt ( Ribbon menu Qt-based ),功能未知
ribbonSARibbon 衍生版本

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

QtitanRibbonSARibbonBCGControls
RibbonMainWindowSARibbonMainWindowN/A
RibbonBarSARibbonBarCBCGPRibbonBar
RibbonPageSARibbonCategoryCBCGPRibbonCategory
RibbonGroupSARibbonPanelCBCGPRibbonPanel
RibbonGallerySARibbonGalleryN/A
RibbonButtonSARibbonToolButtonCBCGPRibbonButton
RibbonQuickAccessBarSARibbonQuickAccessBarCBCGPRibbonQuickAccessToolbar

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效果

相关文章:

  • MCU ESP32-S3+SD NAND(贴片式T卡):智能皮电手环(GSR智能手环)性能与存储的深度评测
  • 基于C#实现中央定位服务器的 P2P 网络聊天系统
  • deepseek梳理java高级开发工程师算法面试题
  • windows文件共享另一台电脑资源管理器网络文件夹无法找到机器
  • 数字IC后端零基础入门基础理论(Day2)
  • 【算法】版本号排序
  • Kotlin Compose 与传统 Android UI 开发对比
  • 小白成长之路-Linux用户与组管理(一)
  • 【MCP教程系列】SpringBoot 搭建基于 Spring AI 的 SSE 模式 MCP 服务
  • 【测试】测试基础概念
  • 重塑“DATA+AI“的共生范式:DataBuilder如何赋能企业数据价值跃迁
  • 在K8S集群中部署EFK日志收集
  • ubuntu20.04系统搭建k8s1.28集群-docker作为容器运行时
  • Ubuntu——执行echo $USE什么都不显示
  • tocmat 启动怎么设置 jvm和gc
  • 机器学习第十讲:异常值检测 → 发现身高填3米的不合理数据
  • CSS盒子模型:Padding与Margin的适用场景与注意事项
  • 初学c语言14(指针6)
  • CentOS7原有磁盘扩容实战记录(LVM非LVM)【针对GPT分区】
  • SpringBoot Vue MySQL酒店民宿预订系统源码(支付宝沙箱支付)+代码讲解视频
  • 西安市未央区委书记刘国荣已任西咸新区党工委书记
  • 中巴续签双边本币互换协议,进一步深化金融战略合作
  • 王毅谈中拉命运共同体建设“五大工程”及落实举措
  • 人民日报钟声:通过平等对话协商解决分歧的重要一步
  • 广西壮族自治区党委政法委副书记李文博接受审查调查
  • 60余年产业积累,“江苏绿心”金湖炼就“超级石油工具箱”