Wednesday, June 3, 2015

Hide 'Window' Menu For Oracle Forms

Hide 'Window' Menu 
For Oracle Forms  




In the name of Allah, Most Gracious, Most Merciful
Praise be to Allah, blessing and peace be upon our prophet Mohammed, his family and his companions. After that,


 Actually,We may need a kind of form's enhancement somehow. Thus, in this article we will be mainly concerned about demonstrating one of the tricks that adds such form's refinement; the 'Window' menu which is created by default with your Oracle Forms 
while generating your menu.

Key Problem: 

 marked in red square...? Window  How to hide the 
 It's been confusing or annoying to the application user.



Key Reason: 
   
    When you run an Oracle form with a custom menu on Microsoft Windows operating system by default, the 'Window' menu will be automatically added and maintained because it is the default Windows standard for any system application. Even if the custom menu has no items in its main menu, the 'Window' menu will be displayed.
  
Key Solution:

     A "Magic" menu item can be created to replace the default system menu. Consequently, it can be hidden using the SET_MENU_ITEM_PROPERTY built-in. 

Pls Follow the Steps that in Shaa Allah will do the Trick…



1- Menu Main  Module 
  1. Open your current menu module application.
  2. Create an independent new menu item with 'Window' name.
  3. Invoke it's property palette,then follow these changes:

    •  Set the Menu Item Type = Magic.
    •  Set Magic Item         = Window.
    •  Set Label              = Null.
    •  Set Command Type       = Null.
    •  Set Visible            = No.

   2- Forms Main Module (Optional)

       In Pre-form or When-New-Form-Instance Trigger Form's Level

SET_MENU_ITEM_PROPERTY('MAIN_MENU.WINDOW', DISPLAYED, PROPERTY_FALSE); 

SET_MENU_ITEM_PROPERTY('MAIN_MENU.WINDOW', ENABLED, PROPERTY_FALSE); 



.It  is Strongly  recommended to follow these steps. Hence, NEVER set Label But to NULL.
  Why...? Since, this will lead to disable other properties functionality and re-display the window 
menu once again.



Note: If for some reasons, the Oracle form's window property (Inherit Menu) and it was set  by default to  'No' ...Pls turns it back to 'Yes' 




 Finally, you have to compile, generate in order for the changes to take effects and if it successfully disappear thus don't forget to save for permanent change

Here is a successful trial of this blog steps



Hope this helps…


My success only comes from Allah, pls. note your comments and suggestions are great help for me in progress thanks in advance.