Document Events
When changes are made to a Document
, observers of the Document
are notified by the event types
DocumentEvent
and UndoableEditEvent
, defined in the javax.swing.event
package. UndoableEditEvent
and its associated listener
interface are discussed in Chapter
18. In this section, we’ll look at DocumentEvent
and its relatives.
The DocumentListener Interface
Document
uses this interface to notify its registered listeners
of changes. It calls one of three methods depending on the category of
change and passes a DocumentEvent
to specify the details.
Methods
- public void changedUpdate(DocumentEvent e)
Signal that an attribute or set of attributes has changed for some of the
Document
’s content. TheDocumentEvent
specifies exactly which part of theDocument
is affected.- public void insertUpdate(DocumentEvent e)
Signal that text has been inserted into the
Document
. TheDocumentEvent
specifies which part of theDocument
’s content is new.- public void removeUpdate(DocumentEvent e)
Signal that text has been removed from the
Document
. TheDocumentEvent
specifies where the text was located in theDocument
before it was deleted.
Suppose we want the parentheses matcher we wrote in the last
section to update its colors “live” instead of waiting for the user
to click on a button. All we have to do is register with the pane’s
Document
as a DocumentListener
. Whenever we’re notified
that text has been inserted or deleted, we recolor the parentheses.
It’s that easy.
We do have to be careful not to ...
Get Java Swing, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.