Skip to content

Window 中使用 MenuBar 元素来声明菜单栏的结构,包括实际的 菜单和子菜单。

Note

一个 Window 中只能有一个 MenuBar 元素,并且它不能位于 forif 中。

MenuBar 本身没有属性,但它必须包含作为子元素的 Menu,这些 Menu 代表菜单栏中的顶级条目。

根据平台的不同,菜单栏可能是原生的,也可能是由 Slint 渲染的。 这意味着例如在 macOS 上,菜单栏将位于屏幕顶部。 Windowwidthheight 属性定义的是客户区,不包括菜单栏。 Window 子元素的 xy 属性也是相对于客户区的。

示例

slint
export component Example inherits Window {    MenuBar {        Menu {            title: @tr("File");            MenuItem {                title: @tr("New");                activated => { file-new(); }                shortcut: @keys(Control + N);            }            MenuItem {                title: @tr("Open");                activated => { file-open(); }                shortcut: @keys(Control + O);            }        }        Menu {            title: @tr("Edit");            MenuItem {                title: @tr("Copy");            }            MenuItem {                title: @tr("Paste");            }            MenuSeparator {}            Menu {                title: @tr("Find");                MenuItem {                    title: @tr("Find in document...");                }                MenuItem {                    title: @tr("Find Next");                }                MenuItem {                    title: @tr("Find Previous");                }            }        }    }
    callback file-new();    callback file-open();
    // ... actual window content goes here}

基于 MIT 协议发布