Главное меню

Здравствуйте!

У меня проблема, мне нужно создать главное меню так, чтобы пользователи использовали вертикальную линейку основного меню, а не так как сейчас это настроено по умолчанию. По умолчанию главное меню в экране слева вертикально. Какую нужно выбрать тему так, чтобы главное меню располагалось горизонтально? можно ли это сделать из уже существующего пакета? или нужно писать самостоятельно?

Здравствуйте,

Для проекта на Jmix 1.5.x вы можете сгенерировать шаблон главного экрана с горизонтальным меню, для этого откройте окно создания экранов и выберите Main screen with top menu

image

Для проекта на Jmix 2.0.x на текущий момент готового шаблона нету, планируем реализовать в будущем, но вы можете сделать его самостоятельно, реализовав собственных MainView.

С Уважением,
Никита

Здравствуйте!
В продолжении темы выше,

как в топ меню созданный экран открывать через закладки в виде табов (tabs)?
Нужно в том меню вынести созданные экраны в виде горизонтальных закладок. Сейчас это, похоже, не реализовано в стандартных настройках меню.

Если я вношу в топ меню соответствующий тег , то меню ругается, пишет, что так нельзя писать.

Пример я беру из вашего же мануала.
Скрин приложил

menu

Если вы компонент tabs - то он является частью экрана, а не меню.

Что именно вы хотите? Чтоб после логина были сразу открыты 4 нужные вам экрана?

Добрый день!

Да, именно так!
Чтобы 4 экрана выглядели в виде закладок верхнего меню.

Скорее всего самым простым будет открытие их через screens или screenBuilders в MainScreen в AfterShowEvent.

AfterShowEvent - точно такой метод есть в версии 1.5?
Помогите найти в мануале 1.5 ссылку …

https://docs.jmix.ru/1.x/jmix/1.5/ui/screens/screen-events.html#after-show-event

в MainScreen уже должна быть подписка на этот event.
Там идет открытие дефолтного экрана…

    @Subscribe
    fun onAfterShow(event: AfterShowEvent?) {
        screenTools.run {
            openDefaultScreen(
                UiControllerUtils.getScreenContext(this@MainScreen).screens
            )
            handleRedirect()
        }
    }

Добрый день!

Вы, похоже, мне пример на котлине написали.
А как будет то же самое на java?
Я новичок в этом деле. Помогите разобраться.
В мануале не очень хороший пример на эту тему.

Это не пример, а то что написано в самой функции в MainScreen
У вас в MainScreen должен быть метод onAfterShow(AfterShowEvent event) он уже определен на то чтобы открыть дефолтный экран.

Видимо вам нужно заменить эту логику на открытие нужных вам экранов через screenBuilders