Как изменить состояние кнопки из триггера в Oracle Forms

Мне нужно изменить состояние кнопки (скрыть ее) в Oracle Forms (10g — я новичок в Forms и не знаю, как распознать версию).

К сожалению, я не могу изменить саму форму.

Я могу добавить свой код только в процедуры, вызываемые PRE-FORM, POST-FORM и WHEN-NEW-ITEM-INSTANCE (что-то в этом роде) триггерами.

Однако: 1. PRE-FORM вызывается слишком рано (форма модифицирует кнопку после этого триггера). 1. POST-FORM вызывается при закрытии дочерней формы (это нормально, но не во всех случаях).

WHEN-NEW-ITEM-INSTANCE кажется хорошим, но мне не удалось попробовать кнопку доступа из процедуры, вызванной из триггера.

Я пытался использовать name_in('datablock.element') для доступа к элементам формы, но понятия не имею, как изменить состояние элемента вне формы.


person Grzegorz Gierlik    schedule 17.06.2013    source источник


Ответы (1)


Немного сложно сказать, когда я не знаю, где находится ваш собственный код. Обычно вы скрываете элементы, устанавливая для свойства Visible значение False, используя формы, встроенные в Set_Item_Property. Это должно работать как из самой формы, так и из любой подключенной библиотеки pll. Синтаксис:

Set_Item_Property(<block_name.item_name>, VISIBLE, PROPERTY_FALSE);
person Peter Å    schedule 18.06.2013
comment
Set_Item_Property() - это то, что я пробовал раньше, но, похоже, это не помогло. Сегодня я попробовал еще раз, я нашел настоящий источник проблемы. Спасибо! - person Grzegorz Gierlik; 19.06.2013