|
Новый Действие("Процедура с параметрами") - возможно ли? | ☑ | ||
---|---|---|---|---|
0
impulse9
28.11.12
✎
06:03
|
Добрый день!
Из ТЗ собирается командная панель, и мне нужно определить для каждой кнопки свое событие, желательно вызов процедуры с параметром = имякнопки, или еще каким-нибудь способом. Возможно ли это? |
|||
1
impulse9
28.11.12
✎
06:10
|
Забыл уточнить, это 1С:Предприятие 8.1 (8.1.15.14)
|
|||
2
Wobland
28.11.12
✎
06:20
|
текущий элемент у тулбара есть?
|
|||
3
impulse9
28.11.12
✎
06:27
|
Нет, вся командная панель формируется программно из элементов справочника.
|
|||
4
Wobland
28.11.12
✎
06:37
|
ну наделай ты двадцать событий - по одному для каждой кнопки
|
|||
5
Defender aka LINN
28.11.12
✎
06:39
|
Ничего, что в обработчик кнопка передается?
|
|||
6
Wobland
28.11.12
✎
06:41
|
(5) сама? при программном назначении?
|
|||
7
Defender aka LINN
28.11.12
✎
06:41
|
(6) При любом
|
|||
8
impulse9
28.11.12
✎
06:41
|
(4) вообще не вариант, кнопок около 200-250, количетсво постоянно меняется
(5) можно поподробнее? как в процедуре обработки события обратиться к нажатой кнопке? |
|||
9
Wobland
28.11.12
✎
06:43
|
(8) количество меняется. а поведение обработчика на лету переписывается?
скрин хочу с двумя сотнями кнопок. чисто поржать ;) |
|||
10
Godofsin
28.11.12
✎
06:45
|
(9) Присоединяюсь.
|
|||
11
impulse9
28.11.12
✎
06:50
|
||||
12
impulse9
28.11.12
✎
06:52
|
(9) не понял про обработчик.
Программно рисуется командная панель, каждой кнопке присваивается некое действие. Мне надо, чтобы при выполнении этого действия можно было узнать, какая кнопка была нажата |
|||
13
Wobland
28.11.12
✎
06:54
|
(12) у Дефендера спроси, он знает
|
|||
14
Defender aka LINN
28.11.12
✎
07:03
|
Вы когда-нибудь обработчик нажатия кнопки видели, не?
|
|||
15
impulse9
28.11.12
✎
07:04
|
(14) нет
|
|||
16
Рэйв
28.11.12
✎
07:05
|
(12)Действию назначеается только Имя проедуры
В определении процедуры есть предопределенный параметр Элемент. То есть если ты пишешь Новый Действие("КакаяТоПроцедура"), то ее определение: Процедура КакаяТоПроцедура(Элемент) Сообщить("Имя кнопки:"+Элемент.Имя); КонецПроцедуры |
|||
17
Рэйв
28.11.12
✎
07:06
|
+А вообще зачем тебе знать какая кнопка нажата если для каждой кнопки по идее должна быть своя процедура нажатия?
|
|||
18
impulse9
28.11.12
✎
07:07
|
(16) Спасибо, то что надо!
|
|||
19
Wobland
28.11.12
✎
07:09
|
(17) у него меню на основе справочника строится.
я б делал что-то типа Выполнить(РеквизитСправочникаСПроцедурой) |
|||
20
Wobland
28.11.12
✎
07:09
|
что будет происходить при изменении состава справочника?
|
|||
21
impulse9
28.11.12
✎
07:15
|
(17) Справочник многоуровневый, для каждой кнопки одна обработка, в которой по (16) получаю имя кнопки. Все круто, спасибо еще раз
(20) При изменении состава справочника отрабатывается процедура ЗаполнитьКоманднуюПанель(), в которой вначале запросом получаем нужные элементы (группы товаров, в которых есть товары с количеством больше нуля), а потом по ним создаем многоуровневую командную панель |
|||
22
kosts
28.11.12
✎
07:16
|
(11) Поиском уже не воспользоваться. Может лучше деревом...
|
|||
23
impulse9
28.11.12
✎
07:17
|
Это менюшка для тачскрина, командная панель удобнее
|
|||
24
Wobland
28.11.12
✎
07:32
|
(21) код обработчиков тоже создаётся, конфигурация обновляется, система перезапускается?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |