Завершен

Вопрос по доступности кнопок меню

Анатолий К 7 лет назад обновлен 7 лет назад 7

Здравствуйте, возник вопрос по возможности сделать недоступной кнопки меню. В версии 2+ возможно было в качестве кнопки меню задать программную кнопку, у которой есть свойство "enabled" и тогда отрабатывала именно она(1 на скриншоте). Сейчас понадобилось сделать аналогичную задачу, и в версии 3, всегда переход идет по действию кнопки самого меню (2 на скриншоте, это пустышка с возвратом). Как в версии 3 возможно реализовать недоступную по некоторому условию кнопку в меню?

Image 1065

Ответ

Ответ

Добрый день.

Вы можете просто не показывать кнопку по некоторому условию. Для этого можете использовать следующий шаблон имени:

{Document.ДоверенныйПоставщик == true:Покоробочная без пересчёта;}

Если Document.ДоверенныйПоставщик не true, то кнопка просто не будет отображаться.

Ответ

Добрый день.

Вы можете просто не показывать кнопку по некоторому условию. Для этого можете использовать следующий шаблон имени:

{Document.ДоверенныйПоставщик == true:Покоробочная без пересчёта;}

Если Document.ДоверенныйПоставщик не true, то кнопка просто не будет отображаться.

Спасибо! Почему-то думал, что в этом случае все равно будет отображаться кнопка, но без заголовка, а оказалось все проще.

Что касается Вашего примера.

Возможность вставлять текстовую кнопку в кнопку меню есть, но так же, как и в версии 2+, текстовая кнопка не полностью заполняет кнопку меню и не гарантирует того, что основная кнопка меню не будет нажата при значении enabled="false" у текстовой кнопки.

Кроме того, enabled="{Document.ДоверенныйПоставщик} == true" отработает неверно, шаблон в фигурных скобках будет вычислен, а "==true" так и останется. То есть, после вычисления шаблона будет enabled="true == true". Используйте просто enabled="{Document.ДоверенныйПоставщик}".

Странно, у меня при таком варианте в 3+ не отрабатывал переход назначенный в текстовой кнопке, а всегда шел по основной, т.е. нажималась именно кнопка меню, а не программная, по крайней мере в эмуляторе, как раз об этом и был вопрос.

По шаблону - спасибо, действительно поспешил и не заметил. Хотя, по идее, хоть это не совсем верно, но результат вычисления логического выражения все равно будет нужным. Либо true==true что = true, либо false ==true, что = false, или я что-то путаю?

Понял, был не прав. Спасибо за подробное объяснение!

Сервис поддержки клиентов работает на платформе UserEcho