Как программно перемещаться по панели навигации? (Хак повторного вызова команды) #638358


#0 by xintrea
Здравствуйте! 1С 8.2, управляемое приложение. Кое-кто уже сталкивался с таким ограничением 1С: если разместить команду на панели навигации (вертикальная слева), то команда будет срабатывать только один раз. Повторный клик на пункт с командой ни к чему не приведет, так как не будет вызван обработчик ОбработкаКоманды. Нужно обязательно ткнуться на какой-нибудь другой пункт панели навигации, и после этого снова ткнуться на пункт с командой. Тогда она сработает. Этот вопрос уже поднималься здесь: Внятного решения небыло, съехали на обсуждение режимов открытия окон и рабочего стола. А проблема видимо в том, что панель навигации служит для перемещения пользователя в пределах командного интерфейса. И если пользователь выбрал на панели навигации какой-то пункт, то при повторном клике на этом пункте ничего не будет происходить. Даже привязанная к пункту команда не будет вызываться. Вот сижу и думаю, как бы это дело обойти. Одно из вариантов решения - на момент завершения команды программно перемещаться на какой-нибудь другой пункт панели навигации. Но я искал какие-нибудь подступы к объекту панели навигации, ничего не нашел, максимум что можно - читать некоторые свойства. Вопрос: как можно программно перепрыгнуть в какое-нибудь место командного интерфейса? Например, можно было бы сделать форму-пустышку, связать ее с каким-нибудь пунктом панели навигации (возможно, скрытым), и перейти туда. Тогда бы повторное нажатие на пункт с командой срабатывало бы нормально.
#1 by mikecool
а я вот подумал - а нафига повторно выполнять команду, если она только что выполнилась?
#2 by xintrea
Например, команда вызывает отчет (форму настройки отчета). Нужно сделать несколько отчетов с разными параметрами. Приходится несколько раз выполнять команду открытия отчета.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С