OraFormsRegisterMessageInterceptor Function

Action

This function registers a message interceptor that will determine the handler id and the handler title of controls of a specified class. This function can be used to determine the handler id of controls during runtime, especially when these handlers do not have a title property.

Include file

OraForms.bdh

Syntax

OraFormsRegisterMessageInterceptor( in nClassId : number ) : number;

Return value

  • The handle to the message interceptor on success

  • 0 otherwise

Parameter Description
nClassId Register an interceptor for controls with this class id.

Example

  transaction TMain
  var
    nFlexId : number;
    gnUmsg  : number;
    subMsg  : number;
    nItc    : number;
  begin  
    OraFormsSetConnectMode(ORA_HTTP_CONNECTION);
    // Connect - with connection properties
    OraFormsSetInt("INITIAL_VERSION", 608);
    OraFormsSetPoint("INITIAL_RESOLUTION", 96, 96);
    OraFormsSetPoint("INITIAL_DISP_SIZE", 1024, 768);
    OraFormsSetInt("INITIAL_COLOR_DEPTH", 256);
    OraFormsSetString("FONT_NAME", "Dialog");
    OraFormsSetPoint("INITIAL_SCALE_INFO", 8, 18);
    OraFormsSetBoolean("WINSYS_REQUIREDVA_LIST", false);
    OraFormsConnect("server module=Person3.fmx userid= useSDI=yes record=names");
    
    // New window activated: Logon
    OraFormsSetWindow("Logon");
    OraFormsLogon("user", "password", "orcl_server");

    OraFormsBeginMessageBlock("Block#2");
    gnUmsg := OraFormsCreateMessage(20, 40, ORA_MSG_TYPE_UPDATE);
    subMsg := OraFormsCreateMessage(30, 40, ORA_MSG_TYPE_UPDATE);
    OraFormsAddPropertyMessage(gnUmsg, ORA_PID_BP_FOREFILLCOL, subMsg);
    OraFormsAddPropertyInt(gnUmsg, 2601, 91);
    OraFormsAddPropertyInt(gnUmsg, 2600, 0);
    OraFormsAddPropertyBoolean(gnUmsg, 2600, false);
    OraFormsAddPropertyPoint(gnUmsg, ORA_PID_INITIAL_RESOLUTION, 0, 0);
    OraFormsAddPropertyString(gnUmsg, 2600, "E");
    OraFormsPutMessage(gnUmsg);
    OraFormsPutTerminalAndWait();
    OraFormsFree(gnUmsg);
    OraFormsEndMessageBlock("Block#2");

    nItc := OraFormsRegisterMessageInterceptor(1020);
    OraFormsKeyStroke("VNDR_END_DATE_ACTIVE_MIR_0", ORA_KEY_TAB, 0);
    
    // Inactive On
    nFlexId := OraFormsGetInterceptedControlId();
    OraFormsUnregisterMessageInterceptor(nItc);
    Print ("here is the id");
    Print(string(nFlexId));
  end TMain;