【发布时间】:2012-07-04 13:13:12
【问题描述】:
我在 6i 中有一个 Oracle 选项卡式表单,我在第一个选项卡上有一个文本项我想设置一个代码,当我更改选项卡时,项目应该移动到当前选项卡。我的意思是项目应该只移动或查看当前活动选项卡,如果项目在第一个选项卡上并且我选择第二个选项卡,那么第一个选项卡上的项目应该放在第二个选项卡上。
【问题讨论】:
标签: forms oracle tabs textinput
我在 6i 中有一个 Oracle 选项卡式表单,我在第一个选项卡上有一个文本项我想设置一个代码,当我更改选项卡时,项目应该移动到当前选项卡。我的意思是项目应该只移动或查看当前活动选项卡,如果项目在第一个选项卡上并且我选择第二个选项卡,那么第一个选项卡上的项目应该放在第二个选项卡上。
【问题讨论】:
标签: forms oracle tabs textinput
我认为,您不能在选项卡之间移动项目,但我需要这样的东西。实际上很高兴从标签标签中看到当前呈现的数据类型而不使用按钮或文本标签。 如果您不想创建多个块,而只想更改 where 子句或更改其他属性,
WHEN-TAB-PAGE-CHANGED 触发器可能如下所示:
declare
curr_tab varchar2(30);
begin
if :SYSTEM.CURRENT_BLOCK in ('BLOCK_A') then
curr_tab := get_canvas_property('MYTABPAGE',topmost_tab_page);
if curr_tab = 'TAB1' then
--Set WHERE 1, execute_query;
go_item('BLOCK_A.NAME');--Navigate to TAB1
else
--Set WHERE 2, execute_query;
go_item('BLOCK_A.NAME_2');--Navigate to TABX
end if;
end if;
end;
这样我可以拥有多个具有相同数据源但属性不同的项目。 对于直接导航,只需转到适当的项目以显示您想要的 TAB。
【讨论】:
有一个触发器“WHEN-TAB-PAGE-CHANGED”可能会帮助您,但是...
...在我看来,您希望在另一个“基础”画布之上有一个选项卡式画布。如果您将希望始终显示在基本画布上的此字段放置,它始终可见,并且您不必在选项卡之间移动数据。
【讨论】: