Имя: Пароль:
1C
1С v8
Переопределить контекстною меню у табличного поля
, ,
0 Chelentana
 
31.10.14
12:35
Добрый день, коллеги! Подскажите пожалуйста как можно программно переопределить контекстное меню? Вот код:
КоманднаяПанельДО = Новый КоманднаяПанель;
КоманднаяПанельДО.Кнопки.Добавить("МояКнопка", ТипКнопкиКоманднойПанели.Действие, "Моя кнопка", Новый Действие("НовоеДействие"));
Если ТаблицаДО <> Неопределено Тогда
    ТаблицаДО.КонтекстноеМеню = КоманднаяПанельДО;
На последней строчке Обшибка при установке значения атрибута контекста (КонтекстноеМеню).
1 vicof
 
31.10.14
12:38
УФ?
2 Chelentana
 
31.10.14
12:41
Извиняюсь, не указал. Обычная форма
3 vicof
 
31.10.14
12:44
Владельцем формы кто является?
4 barrgand
 
31.10.14
12:45
() ЭлементыФормы.ТаблицаДО.КонтекстноеМеню = КоманднаяПанельДО;
5 vicof
 
31.10.14
12:45
Автоконтекстноеменю установлено?
6 Chelentana
 
31.10.14
12:46
(5) убирал в Ложь, все равно ошибка остается
7 Chelentana
 
31.10.14
12:49
(3) обработка, дело в том что ВСЕ элементы формы формируются программно
8 Chelentana
 
31.10.14
12:50
(4) какая разница-то?
9 vicof
 
31.10.14
12:50
(8) Реквизит формы и элемент формы - разные вещи
10 Chelentana
 
31.10.14
12:51
А ну да, извиняюсь. Не указал. Переменная ТаблицаДО - элемент типа табличное поле, которое я предварительно нахожу.
11 Chelentana
 
31.10.14
12:53
Интерактивно переопределить контекстное меню - не проблема, но как это сделать для элементов созданных программно? Никакого метода, похожего на "УстановитьКонекстноеМеню" нету, прямое присваивание тоже не срабатывает. Неужели нет такой возможности?
12 vicof
 
31.10.14
12:54
(11) на (3) не ответил
13 vicof
 
31.10.14
12:54
сорри
14 vicof
 
31.10.14
13:05
+(13) владелец - это Элемент формы, так что не обработка
15 barrgand
 
31.10.14
13:07
(11)
    КоманднаяПанельДО = ЭлементыФормы.Добавить(ТИП("КоманднаяПанель"), "КоманднаяПанельДО");
    КоманднаяПанельДО.Кнопки.Добавить("МояКнопка", ТипКнопкиКоманднойПанели.Действие, "Моя кнопка", Новый Действие("НовоеДействие"));
    ТаблицаДО.КонтекстноеМеню = ЭлементыФормы.КоманднаяПанельДО;
16 Chelentana
 
31.10.14
13:28
(14), согласен, не так Вас понял сначала
17 Chelentana
 
31.10.14
13:31
(15) о как! спасибо, добрый человек! помогло!