Writing Event Listeners |
Caret events occur when the caret in a text component moves or when the selection in a text component changes. You can attach a caret listener to an instance of anyJTextComponent
subclass with theaddCaretListener
method.If your program has a custom caret, you might find it more convenient to attach a listener to the caret object rather than to the text component for which it is a caret. A caret generates change events rather than caret events, so you would need to write a change listener rather than a caret listener. See How to Write a Change Listener for information about change listeners.
Caret Event Methods
TheCaretListener
interface has just one method, so it has no corresponding adapter class. Here's the method:
void caretUpdate(CaretEvent)
- Called when the caret in the listened-to component moves or when the selection in the listened-to component changes.
Examples of Handling Caret Events
The example described in How to Use Text Components has a caret listener that displays caret and selection status. Refer to the section titled Listening for Caret and Selection Changes for a description. You can find the source code inTextComponentDemo.java
.The CaretEvent Class
ThecaretUpdate
method has a single parameter: aCaretEvent
object. To get the text component that generated the event, use thegetSource
method whichCaretEvent
inherits fromEventObject
.The
CaretEvent
class defines two useful methods:
int getDot()
- Returns the current location of the caret. If text is selected, the caret marks one end of the selection.
int getMark()
- Returns the other end of the selection. If nothing is selected, the value returned by this method is equal to the value returned by
getDot
Writing Event Listeners |