Добавить запись в меню с помощью QML

#macos #qt #qml

#macos #qt #qml

Вопрос:

У меня есть приложение на C , которое использует Qt / QML для своего графического интерфейса. Я хотел бы добавить запись в меню с названием приложения в строке меню OSX, используя QML. Мне уже удалось сделать это на C с помощью QMenu, QActions и т.д., И это работает нормально. Но в этом случае было бы достаточно и чище сделать это на QML.

Пока все, что я смог найти, это использовать MenuBar, Menu и MenuItem — но это только добавляет новые меню в строку меню. Добавление в существующее меню названия приложения, похоже, не работает.

Есть идеи?

Ответ №1:

Это будет выполнимо с новым экспериментальным Qt.labs.platform модулем, доступным в Qt 5.8 (пока не выпущен): Qt.labs.platform’s MenuBar .

В настоящее время Qt 5.8 доступен только в альфа-версии, это означает, что вам придется самостоятельно скомпилировать его из исходного кода, чтобы использовать, и он не считается стабильным.

РЕДАКТИРОВАТЬ : Как упоминал DenverCoder21, похоже, что это не позволяет изменять меню приложения, только добавлять другие меню.

Комментарии:

1. Звучит многообещающе, но из вашей ссылки я не могу сделать вывод, что это будет выполнимо. Как бы это выглядело в коде или какая часть в вашей связанной документации намекает на эту возможность? Дополнительные меню рядом с меню названия приложения уже могут быть достигнуты с помощью текущей реализации. Но добавление записей в меню app name нет. Было бы неплохо, если бы вы могли объяснить немного подробнее.

2. Бета-версия Qt 5.8 должна выйти (надеюсь) на следующей неделе.