1с добавить стандартную команду в командную панель программно

Обновлено: 07.07.2024

Есть элементы созданные на УФ программно, их командные панели наполняются автоматически.
Мне нужно самостоятельно их наполнить, это я знаю как.
Но вот галочку снять программно "Автозаполнение" не могу. Как сделать?

РАСШИРЮ ВОПРОС - БОЛЬШЕ ВСЕГО ИНТЕРЕСУЕТ ОТКЛЮЧЕНИЕ АВТОЗАПОЛНЕНИЕ
У КОНТЕКСТНОГО МЕНЮ.

Как костылями справится с командной панелью разобрался.

Кому будет интересно, программно повлиять можно на командную панель.
1. Создать группу удобнее даже просто руками в конфигураторе, допустим "ГруппаМОЯНОВАЯ".
Программно создать туда новую командную панель:

2. Дальше загнать нужные в неё кнопки программно.
3. Конечный этап отключить у элемента стандартную командную панель:

Вот такие костыли)))

НО МНЕ НУЖНО ещё по хорошему и контекстное по своему заполнить. тут вообще засада(((

Создают "Обычную группу " и в нее программно добавляют команды, а текущую панель в свойстве формы "состав команд" очищают. Кому будет интересно, программно повлиять можно на командную панель.
1. Создать группу удобнее даже просто руками в конфигураторе, допустим "ГруппаМОЯНОВАЯ".
Программно создать туда новую командную панель:

2. Дальше загнать нужные в неё кнопки программно.
3. Конечный этап отключить у элемента стандартную командную панель:

Вот такие костыли)))

НО МНЕ НУЖНО ещё по хорошему и контекстное по своему заполнить. тут вообще засада(((

(4), можно скрыть стандартные команды (ну и соответственно отказы на события по горячим клавишам поставить) как контекстного меню, так и у стандартной командной панели.

Делается примерно так:

Элементы.<ИмяТаблицыФормы>КонтекстноеМенюДобавить.Видимость = Ложь; - скрывает команду добавить. И прописать это в событии ПриАктивизацииСтроки.

Для командной панели надо это прописывать в событии ПриСозданииНаСервере и следующее:
Элементы.<ИмяТаблицыФормы>Добавить.Видимость = Ложь; - скрывают команду добавить таблицы формы.

Как программно добавить в командную панель кнопку со стандартной функцией "Сортировать по убыванию"?
Можно, например, включить автозаполнение в ком. панели, потом при открытии создать структуру или массив с действиями, заполнить его, и после этого отключить автозаполнение
Код 1C v 8.х

Разместил: E_Migachev  Версии: | 8.x |  Дата: 01.11.2011   Прочитано: 33792

Распечатать

Похожие FAQ

Google maps, поиск оптимального маршрута  5
В данном посте хочу коснуться основных аспектов построения оптимального маршрута с использованием API Google maps. Исходные данные для построения маршрута: * Географические координаты объектов, которые хранятся в базе; * Координаты начальной и коне База 1С при запуске уходит в дамп и вылетает  1
В последнее время частенько обращаются пользователи у которых после замены или ремонта компьютера 1С не запускается, а точнее при открытии уходит в dump и вылетает. Как правило, решение одно: Отключить аппаратное ускорение видеокарты В Window В регламентированной отчетности не печается штрих-код 1С ( EanGnivc )  0
Установка шрифта EanGnivc В формах регламентированной отчетности, например, налоговые декларации, которые введены для предоставления отчетности, на всех листах в левом верхнем углу содержат свой уникальный штрих-код. В этих формах, которые распрос Горячие клавиши 1С Пользователю [ Предприятие]  5
Основные команды: Интерфейс: F6 - переключение между формами рабочего стола F10 - переход в главное меню окна Alt+1 - переход на панель Разделов Alt+2 - переход на панель Навигации Alt+3 - переход на панель Действий Alt+9 - переход Горячие клавиши 1С Разработчику [ Конфигуратор ]  119
Основные команды: Кодирование: Ctrl+Пробел - вызов подсказки Ctrl+Q - вызов шаблона Ctrl+F1 - поиск в синтакс-помощнике Ctrl + L - удалить текущую строку Alt+Shift+F - отформатировать код Исследование: F12 - ставим курсор на про Посмотреть все результаты поиска похожих

Еще в этой же категории

Программное создание таблицы значений с условным оформлением  12
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора

Заполнение списка значений в элементе поле выбора на форме  10
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип - Произвольный, Использование - Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Поле выбора

Как ограничить список выбора?  8
Ограничим список элементов, установив отбор в открываемой форме //Пример 1 Процедура СтатьяПДРНачалоВыбора(Элемент, СтандартнаяОбработка) ФормаВыбора = Справочники.ПрочиеДоходыИРасходы.ПолучитьФормуВыбора(, Элемент); ЭлементОтбораВидПДР = Форма Реквизит

Как активизировать, перевести фокус на необходимый элемент на форме?  6
//Текущему Элементу формы присваиваем элемент котровый необходимо активизировать ЭтаФорма.ТекущийЭлемент = ЭлементыФормы.ТабличноеПоле; Посмотреть все в категории Работа с Формой (Диалог) и её элементами

Как программно добавить в командную панель кнопку со стандартной функцией "Сортировать по убыванию"?
Можно, например, включить автозаполнение в ком. панели, потом при открытии создать структуру или массив с действиями, заполнить его, и после этого отключить автозаполнение
Код 1C v 8.х

Разместил: E_Migachev  Версии: | 8.x |  Дата: 01.11.2011   Прочитано: 33793

Распечатать

Похожие FAQ

Еще в этой же категории

Как обновить динамический список или реквизит на форме клиента?  19
Если вы, открыв форму справочника или документа, выполнили некоторое действие, код который должен изменить состояние данных в динамических списках или значение реквизита. Данные изменены, но в открытой форме осталось все как было, можно конечно закр Динамический список

Как на управляемой форме разместить список регистра сведений с отбором?  18
Решение рассмотрено для элемента справочника (Контрагент и регистр КонтактнаяИнформация) 1. Создание реквизита: Добавляем новый реквизит формы (. не путать с реквизитом справочника . ) с типом " ДинамическийСписок" В поле " Основная табли Как установить параметр динамического списка?  14
Когда используете для вывода данных динамический список и произвольный запрос, то бывают ситуации когда надо указать параметр используемый в этом запросе. Ниже пример вывода данных регистра сведений в карточке клиента Для вывода используется исп Форма

Программное создание таблицы значений с условным оформлением  12
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора

Заполнение списка значений в элементе поле выбора на форме  10
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип - Произвольный, Использование - Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Посмотреть все в категории Работа с Формой (Диалог) и её элементами

Программно добавить на командную панель кнопку с выполнением произвольного кода по ее нажатию.

Реализация

Программное добавление кнопки с обработчиком

В обработчике события формы ПриСозданииНаСервере() добавим код генерации команды и кнопки

И создадим обработчик нашей команды

В итоге на форме появится кнопка выполняющая наш обработчик. Выглядеть все это будет как добавленная кнопка в конфигураторе

Программное добавление кнопки с обработчиком

Так же кнопки формы имеют свойство КнопкаПоУмолчанию, если присвоить значение Истина

тогда кнопка будет выделена цветом и шрифтом

1С. Программное добавление кнопки с обработчиком

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

Алексей, доброго времени суток! Хороший вопрос!

Все верно, код обработчика придется добавить в модуль формы.

А теперь давайте посмотрим не только на разработку, но и на сопровождение и дальнейшее обновление доработанной конфигурации.

Если команду добавить программно в модуле формы или соответствующем модуле БСП, а обработчик в модуле формы. При этом выделив все свои процедуры префиксом и поместив их в отдельную область, то мы получим ситуацию, когда все наши изменения можно легко увидеть в сравнении модулей. Не придется держать чек-лист со списком команд/реквизитов/элементов для ручного добавления и перепроверки после обновления.

Обдумав данный механизм, просится к добавлению:
1. Автотест с открытием форм и исполнением программного изменения;
2. Корректная обработка ситуаций, когда программное изменение не получилось. С соответствующим выводом на этапе тестирования.

Читайте также: