Menus & toolbars
Menu
A list of commands shown in a transient surface.
Example

Usage
Commands and shortcuts
Menu commands can expose native shortcuts and update app state when triggered.
#include <FluentQt/MenusToolbars.h>
using namespace fluent::menus_toolbars;
using fluent::status_info::Toast;
auto addCommand = [this](FluentMenu* menu, const QString& text,
const QKeySequence& shortcut = QKeySequence()) {
auto* action = menu->addAction(text);
if (!shortcut.isEmpty()) action->setShortcut(shortcut);
connect(action, &QAction::triggered, this, [this, text] {
Toast::showOrUpdateToast(this, "gallery.action-feedback", text + " selected",
Toast::Informational, 2200, Toast::Top, QMargins(16, 50, 16, 16));
});
return action;
};
auto* button = new DropDownButton("File", this);
auto* menu = new FluentMenu(QString(), button);
addCommand(menu, "New", QKeySequence::New);
addCommand(menu, "Open...", QKeySequence::Open);
addCommand(menu, "Save", QKeySequence::Save);
menu->addSeparator();
menu->addAction("Publish")->setEnabled(false);
addCommand(menu, "Close");
button->setMenu(menu);import fluentqt
from PySide6.QtCore import QMargins
from PySide6.QtGui import QKeySequence
def add_command(menu, anchor, text, shortcut=None):
action = menu.addAction(text)
if shortcut is not None:
action.setShortcut(shortcut)
action.triggered.connect(
lambda: fluentqt.Toast.showOrUpdateToast(
anchor,
"gallery.action-feedback",
text + " selected",
fluentqt.Toast.Informational,
2200,
fluentqt.Toast.Top,
QMargins(16, 50, 16, 16)
)
)
return action
button = fluentqt.DropDownButton("File")
menu = fluentqt.FluentMenu("", button)
add_command(menu, button, "New", QKeySequence.New)
add_command(menu, button, "Open...", QKeySequence.Open)
add_command(menu, button, "Save", QKeySequence.Save)
menu.addSeparator()
menu.addAction("Publish").setEnabled(False)
add_command(menu, button, "Close")
button.setMenu(menu)API
DeclarationNo matching API members.