Matrix Constructor
It’s pretty easy to set up a Matrix Object manually, but the List/Matrix constructor can do most (or even all) of the work for you. Start with an empty form in Graphics Mode, and choose List/Matrix from the Construct menu.

This opens the Text List / Matrix Constructor Template dialog. (If you would prefer to edit the template in a separate window, hold down the Option key when choosing from the Construct menu.) The template starts out as a list of all the field names in the current database.

Edit the list to include just the fields you want to appear in the Matrix Object. In this example I want just two fields: Title and Price. Since I want a matrix and not a Text List Object, I also add the `<matrix>` tag.

Now just press the Construct button, and BAM – a Matrix Object, ready to go. At first glance, it might appear that I have actually created a Text List Object. But this isn’t a Text List, it’s a Matrix. The Matrix Object Frame is automatically created at the bottom, the the title and price are displayed with separate Text Display objects that have been automatically created for you.

When I go to data mode and click on different items, I can see that this list is already linked to the database, so Panorama jumps to the item I click on (see Matrix Database Integration).

#### Template Tags

Many of the constructor template tags you learned to use with Text List objects also work with Matrix objects, including searching and the overall height and width of the generated object.

See Text List Constructor to learn more about the available tags. All of the tags available for text list construction work with matrix construction except for `<resizable>` and `<richtext>`.

For a detailed description of all of these tags, see constructlistmatrix.

#### Row Height

Unlike a text list, you can set the row height of a matrix independently from the font size.

#### Customizing the Matrix Layout

The constructor dialog makes a matrix that looks a lot like a text list. However, if you wanted a text list, presumably you would have made one. So most likely you’ll want to rearrange the layout inside the matrix frame to get the look you want. The constructor dialog can’t do that for you, you have to do this arrangement yourself. Once you’ve manually customized the arrangement, you probably don’t want to run the constructor dialog again. Doing that will destroy the custom arrangement you have set up.

#### Matrix Frame Name

Normally it is not necessary to assign a name to the matrix frame. However, if you are placing more than one matrix in a single form, each one must have a unique name. Matrix Object Frame explains how to do this manually, but you can also do it with the Constructor dialog by adding the name to the `<matrix>` tag. In this example, the frame will be named bookFrame.

When the Construct button is pressed, Panorama will assign this name to the Matrix Frame report tile.

It will also fill in this name in the Matrix object.

See Also

- Automatic Form Construction -- creates a column of form elements for editing data fields (or variables).
- Automatic Mailing Label Construction -- creates a mailing label.
- Automatic Report Construction -- creates a tabular report with columns of data.
- Construct Menu -- used to automatically construct complex form applications, including calendars, lists, mailing labels, and more.
- Displaying Data in a Grid -- fundamentals of displaying data in a grid (Text List/Matrix).
- Line Item Grid Constructor -- creates a grid of form elements for displaying and editing line item fields.
- Matrix Clicking -- handling clicks in a Matrix Object.
- Matrix Database Integration -- synchronizing a Matrix Object with a database.
- Matrix Geometry -- customizing the size and geometry of Matrix Object elements.
- Matrix Header and Horizontal Scrolling -- setting up a custom header for a Matrix Object grid.
- Matrix Object -- displaying a grid of items with a custom arrangement.
- Matrix Object Frame -- setting up the arrangement of items within a Matrix Object.
- Tab Panel Constructor -- quickly creating a Tab Panel Object from a template.
- Text List Appearance -- customizing the appearance of a Text List Object.
- Text List Constructor -- quickly creating a Text List Object from a template.
- Text List Database Integration -- synchronizing a Text List Object with a database.
- Text List Multiple Columns -- displaying multiple columns in a Text List Object
- Text List Object -- displaying a grid of text.
- Text List Programming -- programming a Text List Object.
- Text List Searching -- searching within a Text List Object.
- Text List Selection -- selecting items in a Text List Object.

History

Version | Status | Notes
10.0 | New | New in this version.