LOCAL llTest1 llTest1 = .T. PRIVATE oForm1, oForm2, oTranslate oForm1 = CREATEOBJECT('frmRunningForm') oForm2 = CREATEOBJECT('frmTranslator') oTranslate = CREATEOBJECT('Translate') oForm1.Show() IF llTest1 BINDEVENT(_screen.ActiveForm, [RightClick], oTranslate, [DoForm]) ELSE BINDEVENT(_screen.ActiveForm.ActiveControl, [RightClick], oTranslate, [DoForm]) ENDIF READ EVENTS oForm1 = .null. oForm2 = .null. oTranslate = .null. RETURN DEFINE CLASS Translate AS Custom PROCEDURE DoForm oForm2.Show() ENDPROC ENDDEFINE DEFINE CLASS frmRunningForm AS form Caption = "Running Form" Name = "frmRunningForm" Top = 0 Left = 0 ADD OBJECT label1 AS label WITH ; AutoSize = .T., ; Caption = "RightClick on This Label", ; Height = 17, ; Left = 84, ; Top = 45, ; Width = 136, ; TabIndex = 1, ; Name = "Label1" ADD OBJECT cmdExit AS commandbutton WITH ; Top = 121, ; Left = 80, ; Height = 27, ; Width = 84, ; Caption = "Exit", ; TabIndex = 3, ; Name = "cmdExit" ADD OBJECT text1 AS textbox WITH ; Height = 23, ; Left = 94, ; TabIndex = 2, ; Top = 75, ; Width = 100, ; Name = "Text1" PROCEDURE cmdExit.Click THISFORM.Release() ENDPROC PROCEDURE Destroy CLEAR EVENTS ENDPROC ENDDEFINE DEFINE CLASS frmTranslator AS form Caption = "Translator Form" Name = "frmTranslator" AutoCenter = .T. ADD OBJECT cmdExit AS commandbutton WITH ; Top = 139, ; Left = 154, ; Height = 27, ; Width = 84, ; Default = .T., ; Caption = "Exit", ; Name = "cmdExit" PROCEDURE cmdExit.Click THISFORM.Release() ENDPROC ENDDEFINE