You can configure a menu structure and use it in your graphical pages. Using the built-in menu configuration dialog in Project Editor, you can define menu items in a hierarchical tree structure for your project. You can optionally assign individual menu items to a particular page, or make it available to every page. Menu items configured in included projects will be merged with the ones configured in the main project into a single menu tree structure when you compile your main project. This allows extra menu items to be automatically added to your project depending on what projects are included.
At runtime, two menu trees are created. The first menu tree merges the configured menu items for the generic pages and page specific items. You can access this menu tree using the Cicode function MenuGetGenericNode to get the page node for the generic pages in the menu tree and MenuGetPageNode to get the specified page node in the menu tree. The second menu tree automatically merges the menu items for the generic pages and the items specified for the current page. You can access this menu tree using Cicode function MenuGetWindowNode to get the root node of this menu tree. Through the combination of Cicode and graphical objects, you can create a custom menu system that suits your project.
Note: A set of page templates known as Tab Style Templates is provided with the product. These templates already contain a tabbed menu system. If your pages are based on these templates, the menu items configured in the menu configuration database will be displayed on the page automatically at runtime. If no menu is defined in the project, a default menu will be created at runtime to provide access to pages in the project. The default menu functionality can be changed using [Page]AddDefaultMenu parameter.
Note: For existing users of the CSV_Include project, the menu definition would have been defined in a file called Menu.dbf in your project folder. You can migrate the menu definition in this file to the built-in menu configuration database using the migration tool, although the CSV_Include project will continue to use the Menu.dbf file for its page templates. This step is useful if you plan to migrate your project from CSV_Include project to the newer set of built-in templates.
To configure menus for Tab Style templates, see Creating Custom Menus for Tab Style templates.
To configure menus for CSV templates, see Creating Custom Menus for CSV templates.