当我从另一个表单调用 Window 时,它显示两个 Windows 一个在另一个之上
When I Call a Window From an Another Form, It Shows Two Windows One on the Top of the Other
我有两个表格:表格A和表格B。Canvas "Home"属于表格A,上面有两个按钮。当我按下第一个按钮时,我想在表格 B 上调用 "Window 1",如果我按下第二个按钮,我想在表格 B 上调用 "Window 2"。
现在,如果我按下第一个按钮,我会看到 Window 1。但是如果我按下第二个按钮,我会在 Window 1 的顶部看到 Window 2。为什么?
这是第二个按钮的 'WHEN-PUSH-BUTTON' 触发器。 (第一个按钮的 'WHEN-PUSH-BUTTON' 触发器相同):
DECLARE
user_form VARCHAR2 (100);
param_list_id paramlist;
BEGIN
:parameter.PRMTR := '2';
param_list_id := CREATE_PARAMETER_LIST ('param_data');
ADD_PARAMETER (param_list_id,
'PRMTR',
text_parameter,
TO_CHAR ( :parameter.PRMTR));
user_form := '/home/oracle/program/formb.fmx';
CALL_FORM (user_form,
hide,
do_replace,
no_query_only,
param_list_id);
DESTROY_PARAMETER_LIST ('param_data');
END;
这是表格 B 的 'WHEN-NEW-FORM-INSTANCE' 触发器:
IF :parameter.PRMTR = '2' THEN
GO_BLOCK('DATABLOCK_TWO');
ELSIF :parameter.PRMTR = '1' THEN
GO_BLOCK('DATABLOCK_ONE');
END IF;
您可以在表单 B 的 when-new-form-instance 触发器中放入一个 HIDE_VIEW
命令来隐藏第一个 window.
打开Window1的原因无论如何都是Window1的数据块在所有数据块之上。
据我所知,以这种方式从另一种形式调用两个单独的 window 是不可能的。我在 Form B 上创建了一个主页 window 并在其上移动了按钮。我从 Form A 给这个家打电话 window。它成功了。
我有两个表格:表格A和表格B。Canvas "Home"属于表格A,上面有两个按钮。当我按下第一个按钮时,我想在表格 B 上调用 "Window 1",如果我按下第二个按钮,我想在表格 B 上调用 "Window 2"。
现在,如果我按下第一个按钮,我会看到 Window 1。但是如果我按下第二个按钮,我会在 Window 1 的顶部看到 Window 2。为什么?
这是第二个按钮的 'WHEN-PUSH-BUTTON' 触发器。 (第一个按钮的 'WHEN-PUSH-BUTTON' 触发器相同):
DECLARE
user_form VARCHAR2 (100);
param_list_id paramlist;
BEGIN
:parameter.PRMTR := '2';
param_list_id := CREATE_PARAMETER_LIST ('param_data');
ADD_PARAMETER (param_list_id,
'PRMTR',
text_parameter,
TO_CHAR ( :parameter.PRMTR));
user_form := '/home/oracle/program/formb.fmx';
CALL_FORM (user_form,
hide,
do_replace,
no_query_only,
param_list_id);
DESTROY_PARAMETER_LIST ('param_data');
END;
这是表格 B 的 'WHEN-NEW-FORM-INSTANCE' 触发器:
IF :parameter.PRMTR = '2' THEN
GO_BLOCK('DATABLOCK_TWO');
ELSIF :parameter.PRMTR = '1' THEN
GO_BLOCK('DATABLOCK_ONE');
END IF;
您可以在表单 B 的 when-new-form-instance 触发器中放入一个 HIDE_VIEW
命令来隐藏第一个 window.
打开Window1的原因无论如何都是Window1的数据块在所有数据块之上。
据我所知,以这种方式从另一种形式调用两个单独的 window 是不可能的。我在 Form B 上创建了一个主页 window 并在其上移动了按钮。我从 Form A 给这个家打电话 window。它成功了。