Forms Builder provides various components, such as Data Block, Items, Property Palette, Canvases and Windows, Triggers, and Program Units that enable you to create a form.
A data block is a virtual data set that represents the database table. You need to create the associated block in the Object Navigator for every table used in the form. A data block is bound to a table or a view in a database or a set of procedures. The association of a data block and a database allows a form to manipulate the data in a database. You can create a data block manually or using the Data Block wizard.
An item is an interface object that helps display information in a GUI application. It enables you to store, insert, modify, and delete information in a database. Each item belongs to a block. The items in a block are bound to columns in a base table. They display the data stored in these columns. You may also enter the data in these items for later processing. An item may need not necessarily be bound to columns of base table, such as sum of fields. These items are known as non-database items. These items are used to display information from the tables associated with base tables.
Canvases and Windows
A canvas is a physical container or a layout on which you can place items. End users interact with the items on the canvas when a form is executed. You can create a canvas manually using the Layout Editor or the Layout wizard. A canvas can be displayed in different windows.
A Window is the basic Document Interface in the Forms Builder. For each window, you must create at least one canvas. The Windows are assigned appropriate properties to determine whether the application is a Multiple Document Interface (MDI) or Single Document Interface (SDI).
You need to place the canvas in a specific window to view the canvas and the items in it, when you execute a form. By default, a canvas is assigned the window called WINDOW1. You can assign a different window using the Window property in the property palette of the canvas.
Forms Builder enables you to create the following types of canvases: