Вы можете создать строку меню для определённого окна с помощью компонуемой функции MenuBar(). MenuBar() доступна в области видимости компонуемой функции Window(), поэтому у каждого окна может быть собственная строка меню.
В MenuBar() можно использовать следующие компоненты:
Menu() — меню или подменю
Item() — элемент меню, по которому можно щёлкнуть
CheckboxItem() — элемент с флажком
RadioButtonItem() — элемент с переключателем
Separator() — горизонтальная линия, разделяющая группы элементов
Для элементов и меню можно задать параметр mnemonic — символ, который открывает меню или запускает элемент при нажатии вместе с Alt. Если этот символ есть в тексте, его первое вхождение подчёркивается. Для элементов также можно задать параметр shortcut — параметр KeyShortcut, который запускает действие без перехода по меню.
Содержимое меню является компонуемым, поэтому внутри MenuBar() можно использовать условия и циклы, определяющие, какие элементы будут отображаться. При изменении состояния, от которого они зависят, меню обновляется. В следующем примере подменю Settings отображается, только пока установлен флажок Advanced settings: