22.12.2016, 12:55 | #1 |
Участник
|
Динамическое добавление/удаление кнопок(MenuItemButton) на форме
Добрый день, подскажите пожалуйста, можно ли на форме динамически добавлять - удалять MenuItemButton?
Т.е. пользователь встает на запись, нажимает кнопку "выполнить" и ему на выбор 2 варианта, встает на другую запись нажимает кнопку "выполнить" и ему на выбор 4 других варианта? Попробовал сделать так : X++: design = element.form().design(); menuCtrl = design.control("Execute"); while (xExecuteActions) { itemButtonCtrl = menuCtrl .addControl(FormControlType::MenuFunctionButton,xExecuteActions.Id); itemButtonCtrl.dataSource(RContractTable_DS.name()); itemButtonCtrl.menuItemType(MenuItemType::Action); itemButtonCtrl.menuItemName(menuitemactionstr(xExecuteActions.MenuItemName)); itemButtonCtrl.helpText(xExecuteActions.Description); itemButtonCtrl.text(strfmt("%1 %2",xExecuteActions.Id,xExecuteActions.Version)); next xExecuteActions; } element.redraw(); |
|
22.12.2016, 13:07 | #2 |
Участник
|
добавьте необходимое число кнопок на форму сразу, и управляйте их доступностью, перемещаясь по строкам
|
|
22.12.2016, 13:11 | #3 |
Участник
|
С изменением дизайна после инициализации формы много проблем. В стандарте обычно вместо добавления/удаления элементов управления, заранее создают все необходимые элементы, а потом просто меняют их видимость.
|
|
22.12.2016, 13:11 | #4 |
Участник
|
|
|
22.12.2016, 14:02 | #5 |
Дмитрий Ерин
|
Как вариант борьбы с крэшем - попробуйте добавить formRun.lock(); ... formRun.unlock(); вокруг вашего кода.
В стандарте можно посмотреть как сделаны складские отчеты - меню "Печать" в форме InventJournalTable заполняется частично динамически. Конкретнее - см. метод \Classes\InventJournalFormTable\updateQueries_RU
__________________
|
|
|
За это сообщение автора поблагодарили: Craz (1). |
22.12.2016, 16:59 | #6 |
Участник
|
Цитата:
Сообщение от Ruff
Как вариант борьбы с крэшем - попробуйте добавить formRun.lock(); ... formRun.unlock(); вокруг вашего кода.
В стандарте можно посмотреть как сделаны складские отчеты - меню "Печать" в форме InventJournalTable заполняется частично динамически. Конкретнее - см. метод \Classes\InventJournalFormTable\updateQueries_RU |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|