Java Reference
In-Depth Information
You can also append s to the text field or insert s at index i. The second
statement below changes text field field to field[0..i-1] + s + field[i..] .
field.append(s);
field.insert(s, i);
Playing with the selection
The user may select, or highlight, part the text in the text area. Your program
can retrieve the selected text using the first statement shown below. Your pro-
gram can also change the highlight. The second statement below selects or high-
lights all the text, while the third statement selects only field[i..j-1] .
String selected= field.getSelectedText();
field.selectAll();
field.select(i, j);
Playing with the number of columns
Getter method getColumns() and a corresponding setter method exist, so it
is possible to change the size of the text field while the program is running. If the
size is changed, the JFrame should be packed again.
Putting text areas into a JFrame
An instance of class JTextArea is a two-dimensional field of editable text,
called simply a text area . A JTextArea is shown in Fig. 17.2. That text area has
a significant problem in that if too much text is placed in it —either long lines or
too many lines— it will be difficult for the user to use. It would be better if the
text area had scroll bars on it.
Below, we show code to create a text area with scroll bars and place it in the
center of JFrame jf —the scroll bars appear only if needed.
Activity 17-2.2
Get a class that
creates labels
from a footnote.
JTextArea area= new JTextArea("012345678\nabc", 5, 11);
JScrollPane scrollPane= new JScrollPane(area);
jf.getContentPane().add(scrollPane, BorderLayout.CENTER);
Figure 17.4:
Two snapshots of a JFrame with a JTextArea
Search WWH ::




Custom Search