状态与信息
InfoBar 信息栏
在页面中显示提示、成功、警告或错误信息。
示例

用法
不同级别
setSeverity() 设置级别,图标和背景随之变化;setTitle() 和 setMessage() 设置内容。
#include <FluentQt/StatusInfo.h>
using namespace fluent::status_info;
auto* info = new InfoBar(this);
info->setSeverity(InfoBar::Informational);
info->setTitle("Update available");
info->setMessage("Version 3.2 is ready.");
auto* error = new InfoBar(this);
error->setSeverity(InfoBar::Error);
error->setTitle("Upload failed");
error->setMessage("The document could not be saved.");
keepInfoBarOpenWithToast(info);
keepInfoBarOpenWithToast(error);import fluentqt
info = fluentqt.InfoBar()
info.setSeverity(fluentqt.InfoBar.InfoBarSeverity.Informational)
info.setTitle("Update available")
info.setMessage("Version 3.2 is ready.")
success = fluentqt.InfoBar()
success.setSeverity(fluentqt.InfoBar.InfoBarSeverity.Success)
success.setTitle("Saved")
success.setMessage("All changes were saved.")
warning = fluentqt.InfoBar()
warning.setSeverity(fluentqt.InfoBar.InfoBarSeverity.Warning)
warning.setTitle("Storage almost full")
warning.setMessage("Clear space before syncing.")
error = fluentqt.InfoBar()
error.setSeverity(fluentqt.InfoBar.InfoBarSeverity.Error)
error.setTitle("Upload failed")
error.setMessage("The document could not be saved.")API
查看声明没有匹配的 API 成员。
fluent::status_info::InfoBar
继承自 QWidget · FluentElement · QMLPlus
带严重级别、操作区和关闭行为的 Fluent 内联通知栏。
构造函数
属性
bool isOpen弹层、抽屉或通知表面是否处于打开状态。
读取isOpen()设置setIsOpen()通知isOpenChanged()QString title界面显示的标题文本。
读取title()设置setTitle()通知titleChanged()QString message通知表面显示的消息正文。
读取message()设置setMessage()通知messageChanged()InfoBarSeverity severity通知颜色和图标使用的严重级别。
读取severity()设置setSeverity()通知severityChanged()bool isClosable关闭入口是否可见且可用。
读取isClosable()设置setIsClosable()通知isClosableChanged()bool isIconVisible严重级别图标是否可见。
读取isIconVisible()设置setIsIconVisible()通知isIconVisibleChanged()bool singleLine通知是否使用紧凑单行布局。
读取singleLine()设置setSingleLine()通知singleLineChanged()int preferredWidth通知布局使用的首选宽度。
读取preferredWidth()设置setPreferredWidth()通知preferredWidthChanged()int singleLineHeight单行通知布局使用的高度。
读取singleLineHeight()设置setSingleLineHeight()通知singleLineHeightChanged()int multiLineMinHeight多行通知布局使用的最小高度。
读取multiLineMinHeight()设置setMultiLineMinHeight()通知multiLineMinHeightChanged()int multiLineActionMinHeight多行布局包含操作区时使用的最小高度。
读取multiLineActionMinHeight()设置setMultiLineActionMinHeight()通知multiLineActionMinHeightChanged()QWidget* actionWidget通知承载的可选操作控件。
读取actionWidget()设置setActionWidget()通知actionWidgetChanged()QMargins contentMargins控件内容区域周围的边距。
读取contentMargins()设置setContentMargins()通知contentMarginsChanged()int closeButtonSize关闭按钮尺寸。
读取closeButtonSize()设置setCloseButtonSize()通知closeButtonSizeChanged()QString closeButtonAccessibleName由应用为纯图标关闭按钮提供的无障碍名称。
读取closeButtonAccessibleName()设置setCloseButtonAccessibleName()通知closeButtonAccessibleNameChanged()int iconTextSpacing图标与文本内容之间的间距。
读取iconTextSpacing()设置setIconTextSpacing()通知iconTextSpacingChanged()int titleMessageSpacing标题与消息文本之间的间距。
读取titleMessageSpacing()设置setTitleMessageSpacing()通知titleMessageSpacingChanged()int cornerRadius组件背景使用的圆角半径。
读取cornerRadius()设置setCornerRadius()通知cornerRadiusChanged()int severityIconSize严重级别图标背景保留尺寸。
读取severityIconSize()设置setSeverityIconSize()通知severityIconSizeChanged()int severityIconGlyphSize严重级别图标字符尺寸。
读取severityIconGlyphSize()设置setSeverityIconGlyphSize()通知severityIconGlyphSizeChanged()int severityIconBackgroundInset严重级别图标背景绘制内缩量。
读取severityIconBackgroundInset()设置setSeverityIconBackgroundInset()通知severityIconBackgroundInsetChanged()Typography::FontRole titleFontRole标题文本使用的排版角色。
读取titleFontRole()设置setTitleFontRole()通知titleFontRoleChanged()Typography::FontRole messageFontRole消息文本使用的排版角色。
读取messageFontRole()设置setMessageFontRole()通知messageFontRoleChanged()QString informationalIconGlyph信息级别使用的图标字符。
读取informationalIconGlyph()设置setInformationalIconGlyph()通知informationalIconGlyphChanged()QString successIconGlyph成功级别使用的图标字符。
读取successIconGlyph()设置setSuccessIconGlyph()通知successIconGlyphChanged()QString warningIconGlyph警告级别使用的图标字符。
读取warningIconGlyph()设置setWarningIconGlyph()通知warningIconGlyphChanged()QString errorIconGlyph错误级别使用的图标字符。
读取errorIconGlyph()设置setErrorIconGlyph()通知errorIconGlyphChanged()
方法
bool isOpen() const弹层、抽屉或通知表面是否处于打开状态。
void setIsOpen(bool open)弹层、抽屉或通知表面是否处于打开状态。
QString title() const界面显示的标题文本。
void setTitle(const QString& title)界面显示的标题文本。
QString message() const通知表面显示的消息正文。
void setMessage(const QString& message)通知表面显示的消息正文。
InfoBarSeverity severity() const通知颜色和图标使用的严重级别。
void setSeverity(InfoBarSeverity severity)通知颜色和图标使用的严重级别。
bool isClosable() const关闭入口是否可见且可用。
void setIsClosable(bool closable)关闭入口是否可见且可用。
bool isIconVisible() const严重级别图标是否可见。
void setIsIconVisible(bool visible)严重级别图标是否可见。
bool singleLine() const通知是否使用紧凑单行布局。
void setSingleLine(bool singleLine)通知是否使用紧凑单行布局。
int preferredWidth() const通知布局使用的首选宽度。
void setPreferredWidth(int width)通知布局使用的首选宽度。
int singleLineHeight() const单行通知布局使用的高度。
void setSingleLineHeight(int height)单行通知布局使用的高度。
int multiLineMinHeight() const多行通知布局使用的最小高度。
void setMultiLineMinHeight(int height)多行通知布局使用的最小高度。
int multiLineActionMinHeight() const多行布局包含操作区时使用的最小高度。
void setMultiLineActionMinHeight(int height)多行布局包含操作区时使用的最小高度。
QWidget* actionWidget() const通知承载的可选操作控件。
void setActionWidget(QWidget* widget)通知承载的可选操作控件。
QMargins contentMargins() const控件内容区域周围的边距。
void setContentMargins(const QMargins& margins)控件内容区域周围的边距。
int closeButtonSize() const关闭按钮尺寸。
QString closeButtonAccessibleName() const由应用为纯图标关闭按钮提供的无障碍名称。
void setCloseButtonAccessibleName(const QString& name)由应用为纯图标关闭按钮提供的无障碍名称。
int iconTextSpacing() const图标与文本内容之间的间距。
void setIconTextSpacing(int spacing)图标与文本内容之间的间距。
int titleMessageSpacing() const标题与消息文本之间的间距。
void setTitleMessageSpacing(int spacing)标题与消息文本之间的间距。
int cornerRadius() const组件背景使用的圆角半径。
void setCornerRadius(int radius)组件背景使用的圆角半径。
int severityIconSize() const严重级别图标背景保留尺寸。
void setSeverityIconSize(int size)严重级别图标背景保留尺寸。
int severityIconGlyphSize() const严重级别图标字符尺寸。
void setSeverityIconGlyphSize(int size)严重级别图标字符尺寸。
int severityIconBackgroundInset() const严重级别图标背景绘制内缩量。
void setSeverityIconBackgroundInset(int inset)严重级别图标背景绘制内缩量。
Typography::FontRole titleFontRole() const标题文本使用的排版角色。
void setTitleFontRole(Typography::FontRole role)标题文本使用的排版角色。
Typography::FontRole messageFontRole() const消息文本使用的排版角色。
QString informationalIconGlyph() const信息级别使用的图标字符。
QString successIconGlyph() const成功级别使用的图标字符。
void setSuccessIconGlyph(const QString& glyph)成功级别使用的图标字符。
QString warningIconGlyph() const警告级别使用的图标字符。
void setWarningIconGlyph(const QString& glyph)警告级别使用的图标字符。
QString errorIconGlyph() const错误级别使用的图标字符。
void setErrorIconGlyph(const QString& glyph)错误级别使用的图标字符。
信号
void isOpenChanged(bool open)弹层、抽屉或通知表面是否处于打开状态。
void titleChanged(const QString& title)界面显示的标题文本。
void messageChanged(const QString& message)通知表面显示的消息正文。
void severityChanged(InfoBarSeverity severity)通知颜色和图标使用的严重级别。
void isClosableChanged(bool closable)关闭入口是否可见且可用。
void isIconVisibleChanged(bool visible)严重级别图标是否可见。
void singleLineChanged(bool singleLine)通知是否使用紧凑单行布局。
void preferredWidthChanged(int width)通知布局使用的首选宽度。
void singleLineHeightChanged(int height)单行通知布局使用的高度。
void multiLineMinHeightChanged(int height)多行通知布局使用的最小高度。
void multiLineActionMinHeightChanged(int height)多行布局包含操作区时使用的最小高度。
void actionWidgetChanged(QWidget* widget)通知承载的可选操作控件。
void closeButtonAccessibleNameChanged(const QString& name)由应用为纯图标关闭按钮提供的无障碍名称。
void iconTextSpacingChanged(int spacing)图标与文本内容之间的间距。
void titleMessageSpacingChanged(int spacing)标题与消息文本之间的间距。
void cornerRadiusChanged(int radius)组件背景使用的圆角半径。
void severityIconSizeChanged(int size)严重级别图标背景保留尺寸。
void severityIconGlyphSizeChanged(int size)严重级别图标字符尺寸。
void severityIconBackgroundInsetChanged(int inset)严重级别图标背景绘制内缩量。
void errorIconGlyphChanged(const QString& glyph)错误级别使用的图标字符。
枚举
enum InfoBarSeverityInformationalSuccessWarningError
析构函数
PySide6 扩展
takeActionWidget()Release and return the current action as Python-owned content.
子类扩展接口
方法
继承自 fluent::FluentElement
方法
static void setTheme(Theme theme)更新全局主题,并通知所有活跃的 FluentElement 实例。
static void setThemeDeferred(Theme theme)以可见元素优先的批次调度主题刷新,避免阻塞当前交互。
static Theme currentTheme()返回当前生效的全局主题。
static bool themeUsesDarkAppearance(Theme theme)返回指定主题是否使用暗色底的 chrome 与材质 token。
static void refreshTheme()在设计 token 变化后重新广播当前主题以触发重绘。
static int themeGeneration()每次主题变化自增的单调计数器,用于过期判断。
Theme effectiveTheme() const解析此元素实际使用的主题,会优先读取 QWidget 父链上的局部主题覆盖。
bool effectiveThemeUsesDarkAppearance() const返回此元素的实际主题是否使用暗色底 chrome。
bool setThemeOverrides(const QJsonObject& overrides)供组件侧访问的设计 token 接口。
QJsonObject themeOverrides() const返回当前元素的覆盖配置。
void clearThemeOverrides()恢复全部 token 跟随全局主题。
const Colors& themeColorsRef() const对当前色板的零拷贝访问(用于绘制热路径)。
Material::AcrylicToken themeAcrylic() const材质、阴影和自适应布局 token。
QColor themeBackdrop(bool active) const给定激活状态下的窗口 chrome 背景色。
virtual void onThemeUpdated()全局主题变化后调用。
枚举
enum Theme解析设计 token 时使用的全局视觉主题。
Light = 0Dark = 1HighContrast = 2
类型与别名
struct Colors返回给组件使用的设计 token 快照。
继承自 fluent::QMLPlus
方法
AnchorLayout::Anchors* anchors()返回 QWidget 宿主的可变锚点配置。
void setState(const QString& name)应用具名 state;名称为空时恢复默认状态。
void addState(const QMLState& state)注册或替换一个具名 state 定义。
void evaluateStates()重新计算条件;按注册顺序选择首个成立的条件。
QMLPlusRuntime* runtime()返回按需创建、由宿主持有的状态观察对象。
void setAnchors(const AnchorLayout::Anchors& anchors)替换宿主的全部锚点,并使父布局失效。
void resetAnchors()清除宿主全部锚点,并使父布局失效。
void bind(const char* targetProp, QObject* source, const char* sourceProp, PropertyBinder::Direction dir = PropertyBinder::OneWay)将 source 属性绑定到 QWidget 宿主上的 target 属性。
BindingHandle bindManaged(const char* targetProp, QObject* source, const char* sourceProp, PropertyBinder::Direction direction = PropertyBinder::OneWay, BindingOptions options = {})在当前 QWidget 宿主上安装可管理的直接绑定。
BindingHandle bindComputed(const char* targetProp, const QVector<BindingDependency>& dependencies, std::function<QVariant()> evaluate, BindingOptions options = {})在当前 QWidget 宿主上安装使用显式依赖的 C++ 表达式绑定。
void setBehavior(const char* propertyName, const PropertyAnimation& animation)设置宿主受管理属性写入时使用的默认动画。
void clearBehavior(const char* propertyName)移除后续受管理写入使用的默认动画。
bool writeProperty(const char* propertyName, const QVariant& value)通过 Behavior 写入宿主属性,且不移除该属性的绑定。
Qt 基类完整成员:QWidget