Oracle Forms 9i+ 处理FBean 的事件

在Oracle Forms 9i中使用FBean注册Java VBean时遇到问题,无法直接获取IHandler来向Forms发送事件。解决办法是创建普通VBean类,通过触发器初始化并利用其与FBean交互,实现事件传递。
摘要由CSDN通过智能技术生成


首先吐槽一下坑爹的Oracle forms

使用forms 的pjc 加强功能就要用 FBean 注册java VBean 类 但调用此类的方法时无法得到 IHandler 于是无法向Forms 发送事件。

这里我使用是间接方式。


1.  建立一个普通VBean 类


package tom.oracle.demos.dispatch;

/* DispatchingBean is a bean that will dispatch an event to forms
 * It will be called by the DispatchingPJC as an example
 * 
 * This method can be used to workaround that dispatching cannot
 * be done using PJCs
 * */

import java.awt.Component;
import java.awt.Container;
import java.awt.Frame;
import oracle.forms.engine.Main;
import oracle.forms.handler.IHandler;
import oracle.forms.ui.CustomEvent;
import oracle.forms.ui.VBean;
import oracle.forms.properties.ID;
import tom.oracle.demos.dispatch.DispatchingFBean;

public class DispatchingBean extends VBean
{private IHandler mHandler; 
 private Frame formsTopFrame   = null;
 private Main  formsMain       = null;
 private static final ID MYEVENT =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值