Version 12 (modified by mikel, 9 years ago) (diff)


Add Text Fields

Next we will add text fields to the application window. Two of the fields are for user input: one accepts the number of dollars to convert to a foreign currency; the other accepts the exchange rate. The third text field is a read-only field that displays the dollar amount converted to the foreign currency.

In InterfaceBuilder's Palettes window, select the "Cocoa Text" view, and find the NSTextView object:

Cocoa Text palette

Drag an NSTextView object and drop it into the "Currency Converter" window:

Dropping the NSTextView

If you drag a view near the edges of a window, InterfaceBuilder? displays blue guide lines that show the standard placement. Drag the text view to the right and upward until the guide lines appear, and then let go. The text view is then positioned in the standard way.

Now add two more text fields. You can drag them from the palette as you did the first one, or you can duplicate the first one. To duplicate, select the first text view and then choose "Duplicate" from the "Edit" menu. Alternatively, you can Option-drag the text field to duplicate it.

Two more NSTextField objects

Label the Text Fields

Now add labels to the text fields, to identify their purposes for the user. For each text field, drag a Label object from the palette and drop it next to the field. (Alternatively, you can drop one Label and then duplicate it, just as you can duplicate the text fields.)

Dropping labels

Just as InterfaceBuilder displayed guide lines to help you position the text field near the edge of the window, it also displays guide lines to help you position the labels near the text fields. Just drag each text field until the blue guide lines appear, and release the label.

Now change the text of the labels. Click a label to select it. Then show the Inspector by choosing the "Show Inspector" item from the "Tools" menu. Select the "Attributes" item from the pull-down menu at the top of the Inspector window, and type the correct text into the Title field. For example, here is how to enter the text for the top label:

Start Previous