如何从 Oracle Forms 中的触发器修改按钮的状态

Posted

技术标签:

【中文标题】如何从 Oracle Forms 中的触发器修改按钮的状态【英文标题】:How to modify state of button from trigger in Oracle Forms 【发布时间】:2013-06-17 21:12:45 【问题描述】:

我必须修改 Oracle Forms 中按钮的状态(隐藏它)(10g -- 我是 Forms 的新手,我不确定如何识别版本)。

很遗憾,我无法修改表单本身。

我只能将自己的代码添加到由PRE-FORMPOST-FORMWHEN-NEW-ITEM-INSTANCE(类似的)触发器调用的过程中。

但是: 1、PRE-FORM调用太早(触发后表单修改按钮)。 1.POST-FORM在子窗体关闭时调用(可以,但不能处理所有情况)。

WHEN-NEW-ITEM-INSTANCE 看起来不错,但我尝试从触发器调用的过程中访问按钮失败。

我尝试使用name_in('datablock.element') 访问表单元素,但我不知道如何修改表单外元素的状态。

【问题讨论】:

【参考方案1】:

当我不知道您的自定义代码在哪里时,很难说。通常,您通过使用内置表单 Set_Item_Property 将 Visible 属性设置为 False 来隐藏项目。这应该适用于表单本身和任何附加的 pll 库。语法是:

Set_Item_Property(<block_name.item_name>, VISIBLE, PROPERTY_FALSE);

【讨论】:

Set_Item_Property() 是我之前尝试过的,但似乎失败了。今天我再次尝试,我找到了问题的真正根源。谢谢!

以上是关于如何从 Oracle Forms 中的触发器修改按钮的状态的主要内容,如果未能解决你的问题,请参考以下文章

Oracle Forms - 如何加快 POST_QUERY 触发器?

Oracle Forms 10g 自动查询

Oracle Forms:预删除触发器中的警报不起作用

Oracle Forms 6i 解析 LOV 代码

没有使用GET_FILE_NAME Oracle Forms打开对话框

如何将 Forms 10g 中创建/修改的 Form(FMB) 降级为 Oracle Forms 9