QtCanpool 3.3.0
载入中...
搜索中...
未找到
QxRibbon::RibbonWindow类 参考

如果要使用 RibbonBar,必须使用 RibbonWindow 代替 QMainWindow 更多...

#include <qxribbon/ribbonwindow.h>

类 QxRibbon::RibbonWindow 继承关系图:

Public 成员函数

 RibbonWindow (QWidget *parent=Q_NULLPTR)
 
 ~RibbonWindow () override
 
bool isFrameless () const
 
void setFrameless (bool frameless)
 
void updateWindowFlags (Qt::WindowFlags flags) override
 
- Public 成员函数 继承自 QxRibbon::RibbonMainWindow
 RibbonMainWindow (QWidget *parent=Q_NULLPTR)
 
virtual ~RibbonMainWindow () override
 
RibbonBar * ribbonBar () const
 
void resizeRibbon ()
 
void setRibbonTheme (int theme)
 theme, see to RibbonTheme::ThemeStyle
 
int ribbonTheme () const
 
void loadTheme (const QString &themeFile)
 
void windowStateChanged (Qt::WindowStates state)
 

Protected 成员函数

virtual bool eventFilter (QObject *obj, QEvent *e) override
 
virtual bool event (QEvent *e) override
 
- Protected 成员函数 继承自 QxRibbon::RibbonMainWindow
void setMenuWidget (QWidget *menuBar)
 
void setMenuBar (QMenuBar *menuBar)
 

详细描述

如果要使用 RibbonBar,必须使用 RibbonWindow 代替 QMainWindow

由于 ribbon 的风格和传统的 MenuBar/ToolBar 风格差异较大,RibbonBar 使用需要把原有的 QMainWindow 替换为 RibbonWindow, RibbonWindow 默认是个无边框窗体,继承自 RibbonMainWindow。

RibbonWindow(QWidget *parent = Q_NULLPTR);
如果要使用 RibbonBar,必须使用 RibbonWindow 代替 QMainWindow
#define Q_NULLPTR
Copyleft (C) 2025 maminjie canpool@163.com SPDX-License-Identifier: MulanPSL-2.0

由于无边框窗体存在一些缺陷,所以提供 setFrameless 接口来设置是否采用无边框。如果不采用无边框的话,window 原生标题栏加上 RibbonBar 的高度比较高,可以考虑将 RibbonBar 设置为 wps 模式

参见
RibbonBar::setRibbonStyle
void setFrameless(bool frameless);
void setFrameless(bool frameless)

RibbonWindow 提供了几种常用的 ribbon 样式表,样式可见 RibbonTheme 通过 setRibbonTheme 可改变 ribbon 的样式,用户也可通过 qss 自己定义自己的样式。

常用方法:在 RibbonWindow 继承类中自定义 Theme 枚举类型,如: RibbonThemeCustom, 然后首个类型值定义为 CustomTheme + 1

在文件 ribbonwindow.h 第 39 行定义.

构造及析构函数说明

◆ RibbonWindow()

QxRibbon::RibbonWindow::RibbonWindow ( QWidget *  parent = Q_NULLPTR)

在文件 ribbonwindow.cpp 第 99 行定义.

◆ ~RibbonWindow()

QxRibbon::RibbonWindow::~RibbonWindow ( )
override

在文件 ribbonwindow.cpp 第 108 行定义.

成员函数说明

◆ event()

bool QxRibbon::RibbonWindow::event ( QEvent *  e)
overrideprotectedvirtual

重载 QxRibbon::RibbonMainWindow .

在文件 ribbonwindow.cpp 第 170 行定义.

◆ eventFilter()

bool QxRibbon::RibbonWindow::eventFilter ( QObject *  obj,
QEvent *  e 
)
overrideprotectedvirtual

重载 QxRibbon::RibbonMainWindow .

在文件 ribbonwindow.cpp 第 149 行定义.

◆ isFrameless()

bool QxRibbon::RibbonWindow::isFrameless ( ) const

在文件 ribbonwindow.cpp 第 113 行定义.

◆ setFrameless()

void QxRibbon::RibbonWindow::setFrameless ( bool  frameless)

在文件 ribbonwindow.cpp 第 119 行定义.

◆ updateWindowFlags()

void QxRibbon::RibbonWindow::updateWindowFlags ( Qt::WindowFlags  flags)
overridevirtual

重载 QxRibbon::RibbonMainWindow .

在文件 ribbonwindow.cpp 第 131 行定义.


该类的文档由以下文件生成: