- java.lang.Object
-
- java.awt.Component
-
- java.awt.TextComponent
-
- java.awt.TextField
-
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
public class TextField extends TextComponent
ATextField
object is a text component that allows for the editing of a single line of text.For example, the following image depicts a frame with four text fields of varying widths. Two of these text fields display the predefined text
"Hello"
.Here is the code that produces these four text fields:
TextField tf1, tf2, tf3, tf4; // a blank text field tf1 = new TextField(); // blank field of 20 columns tf2 = new TextField("", 20); // predefined text displayed tf3 = new TextField("Hello!"); // predefined text in 30 columns tf4 = new TextField("Hello", 30);
Every time the user types a key in the text field, one or more key events are sent to the text field. A
KeyEvent
may be one of three types: keyPressed, keyReleased, or keyTyped. The properties of a key event indicate which of these types it is, as well as additional information about the event, such as what modifiers are applied to the key event and the time at which the event occurred.The key event is passed to every
KeyListener
orKeyAdapter
object which registered to receive such events using the component'saddKeyListener
method. (KeyAdapter
objects implement theKeyListener
interface.)It is also possible to fire an
ActionEvent
. If action events are enabled for the text field, they may be fired by pressing theReturn
key.The
TextField
class'sprocessEvent
method examines the action event and passes it along toprocessActionEvent
. The latter method redirects the event to anyActionListener
objects that have registered to receive action events generated by this text field.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
TextField.AccessibleAWTTextField
This class implements accessibility support for theTextField
class.-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Nested classes/interfaces inherited from class java.awt.TextComponent
TextComponent.AccessibleAWTTextComponent
-
-
Field Summary
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from class java.awt.TextComponent
textListener
-
-
Constructor Summary
Constructors Constructor Description TextField()
Constructs a new text field.TextField(int columns)
Constructs a new empty text field with the specified number of columns.TextField(String text)
Constructs a new text field initialized with the specified text.TextField(String text, int columns)
Constructs a new text field initialized with the specified text to be displayed, and wide enough to hold the specified number of columns.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
addActionListener(ActionListener l)
Adds the specified action listener to receive action events from this text field.void
addNotify()
Creates the TextField's peer.boolean
echoCharIsSet()
Indicates whether or not this text field has a character set for echoing.AccessibleContext
getAccessibleContext()
Gets the AccessibleContext associated with this TextField.ActionListener[]
getActionListeners()
Returns an array of all the action listeners registered on this textfield.int
getColumns()
Gets the number of columns in this text field.char
getEchoChar()
Gets the character that is to be used for echoing.<T extends EventListener>
T[]getListeners(Class<T> listenerType)
Returns an array of all the objects currently registered asFooListener
s upon thisTextField
.Dimension
getMinimumSize()
Gets the minimum dimensions for this text field.Dimension
getMinimumSize(int columns)
Gets the minimum dimensions for a text field with the specified number of columns.Dimension
getPreferredSize()
Gets the preferred size of this text field.Dimension
getPreferredSize(int columns)
Gets the preferred size of this text field with the specified number of columns.Dimension
minimumSize()
Deprecated.As of JDK version 1.1, replaced bygetMinimumSize()
.Dimension
minimumSize(int columns)
Deprecated.As of JDK version 1.1, replaced bygetMinimumSize(int)
.protected String
paramString()
Returns a string representing the state of thisTextField
.Dimension
preferredSize()
Deprecated.As of JDK version 1.1, replaced bygetPreferredSize()
.Dimension
preferredSize(int columns)
Deprecated.As of JDK version 1.1, replaced bygetPreferredSize(int)
.protected void
processActionEvent(ActionEvent e)
Processes action events occurring on this text field by dispatching them to any registeredActionListener
objects.protected void
processEvent(AWTEvent e)
Processes events on this text field.void
removeActionListener(ActionListener l)
Removes the specified action listener so that it no longer receives action events from this text field.void
setColumns(int columns)
Sets the number of columns in this text field.void
setEchoChar(char c)
Sets the echo character for this text field.void
setEchoCharacter(char c)
Deprecated.As of JDK version 1.1, replaced bysetEchoChar(char)
.void
setText(String t)
Sets the text that is presented by this text component to be the specified text.-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, postEvent, prepareImage, prepareImage, print, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setMixingCutoutShape, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from class java.awt.TextComponent
addTextListener, enableInputMethods, getBackground, getCaretPosition, getInputMethodRequests, getSelectedText, getSelectionEnd, getSelectionStart, getText, getTextListeners, isEditable, processTextEvent, removeNotify, removeTextListener, select, selectAll, setBackground, setCaretPosition, setEditable, setSelectionEnd, setSelectionStart
-
-
-
-
Constructor Detail
-
TextField
public TextField() throws HeadlessException
Constructs a new text field.- Throws:
HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.- See Also:
GraphicsEnvironment.isHeadless()
-
TextField
public TextField(String text) throws HeadlessException
Constructs a new text field initialized with the specified text.- Parameters:
text
- the text to be displayed. Iftext
isnull
, the empty string""
will be displayed. Iftext
contains EOL and/or LF characters, then each will be replaced by space character.- Throws:
HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.- See Also:
GraphicsEnvironment.isHeadless()
-
TextField
public TextField(int columns) throws HeadlessException
Constructs a new empty text field with the specified number of columns. A column is an approximate average character width that is platform-dependent.- Parameters:
columns
- the number of columns. Ifcolumns
is less than0
,columns
is set to0
.- Throws:
HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.- See Also:
GraphicsEnvironment.isHeadless()
-
TextField
public TextField(String text, int columns) throws HeadlessException
Constructs a new text field initialized with the specified text to be displayed, and wide enough to hold the specified number of columns. A column is an approximate average character width that is platform-dependent.- Parameters:
text
- the text to be displayed. Iftext
isnull
, the empty string""
will be displayed. Iftext
contains EOL and/or LF characters, then each will be replaced by space character.columns
- the number of columns. Ifcolumns
is less than0
,columns
is set to0
.- Throws:
HeadlessException
- if GraphicsEnvironment.isHeadless() returns true.- See Also:
GraphicsEnvironment.isHeadless()
-
-
Method Detail
-
addNotify
public void addNotify()
Creates the TextField's peer. The peer allows us to modify the appearance of the TextField without changing its functionality.- Overrides:
addNotify
in classTextComponent
- See Also:
TextComponent.removeNotify()
-
getEchoChar
public char getEchoChar()
Gets the character that is to be used for echoing.An echo character is useful for text fields where user input should not be echoed to the screen, as in the case of a text field for entering a password. If
echoChar
=0
, user input is echoed to the screen unchanged.A Java platform implementation may support only a limited, non-empty set of echo characters. This function returns the echo character originally requested via setEchoChar(). The echo character actually used by the TextField implementation might be different.
- Returns:
- the echo character for this text field.
- See Also:
echoCharIsSet()
,setEchoChar(char)
-
setEchoChar
public void setEchoChar(char c)
Sets the echo character for this text field.An echo character is useful for text fields where user input should not be echoed to the screen, as in the case of a text field for entering a password. Setting
echoChar
=0
allows user input to be echoed to the screen again.A Java platform implementation may support only a limited, non-empty set of echo characters. Attempts to set an unsupported echo character will cause the default echo character to be used instead. Subsequent calls to getEchoChar() will return the echo character originally requested. This might or might not be identical to the echo character actually used by the TextField implementation.
- Parameters:
c
- the echo character for this text field.- Since:
- 1.1
- See Also:
echoCharIsSet()
,getEchoChar()
-
setEchoCharacter
@Deprecated public void setEchoCharacter(char c)
Deprecated. As of JDK version 1.1, replaced bysetEchoChar(char)
.Sets the character to be echoed when protected input is displayed.- Parameters:
c
- the echo character for this text field
-
setText
public void setText(String t)
Sets the text that is presented by this text component to be the specified text.- Overrides:
setText
in classTextComponent
- Parameters:
t
- the new text. Ift
isnull
, the empty string""
will be displayed. Ift
contains EOL and/or LF characters, then each will be replaced by space character.- See Also:
TextComponent.getText()
-
echoCharIsSet
public boolean echoCharIsSet()
Indicates whether or not this text field has a character set for echoing.An echo character is useful for text fields where user input should not be echoed to the screen, as in the case of a text field for entering a password.
- Returns:
true
if this text field has a character set for echoing;false
otherwise.- See Also:
setEchoChar(char)
,getEchoChar()
-
getColumns
public int getColumns()
Gets the number of columns in this text field. A column is an approximate average character width that is platform-dependent.- Returns:
- the number of columns.
- Since:
- 1.1
- See Also:
setColumns(int)
-
setColumns
public void setColumns(int columns)
Sets the number of columns in this text field. A column is an approximate average character width that is platform-dependent.- Parameters:
columns
- the number of columns.- Throws:
IllegalArgumentException
- if the value supplied forcolumns
is less than0
.- Since:
- 1.1
- See Also:
getColumns()
-
getPreferredSize
public Dimension getPreferredSize(int columns)
Gets the preferred size of this text field with the specified number of columns.- Parameters:
columns
- the number of columns in this text field.- Returns:
- the preferred dimensions for displaying this text field.
- Since:
- 1.1
-
preferredSize
@Deprecated public Dimension preferredSize(int columns)
Deprecated. As of JDK version 1.1, replaced bygetPreferredSize(int)
.Returns the preferred size for this text field with the specified number of columns.- Parameters:
columns
- the number of columns- Returns:
- the preferred size for the text field
-
getPreferredSize
public Dimension getPreferredSize()
Gets the preferred size of this text field.- Overrides:
getPreferredSize
in classComponent
- Returns:
- the preferred dimensions for displaying this text field.
- Since:
- 1.1
- See Also:
Component.getMinimumSize()
,LayoutManager
-
preferredSize
@Deprecated public Dimension preferredSize()
Deprecated. As of JDK version 1.1, replaced bygetPreferredSize()
.Description copied from class:Component
Returns the component's preferred size.- Overrides:
preferredSize
in classComponent
- Returns:
- the component's preferred size
-
getMinimumSize
public Dimension getMinimumSize(int columns)
Gets the minimum dimensions for a text field with the specified number of columns.- Parameters:
columns
- the number of columns in this text field.- Returns:
- the minimum size for this text field
- Since:
- 1.1
-
minimumSize
@Deprecated public Dimension minimumSize(int columns)
Deprecated. As of JDK version 1.1, replaced bygetMinimumSize(int)
.Returns the minimum dimensions for a text field with the specified number of columns.- Parameters:
columns
- the number of columns- Returns:
- the minimum size for this text field
-
getMinimumSize
public Dimension getMinimumSize()
Gets the minimum dimensions for this text field.- Overrides:
getMinimumSize
in classComponent
- Returns:
- the minimum dimensions for displaying this text field.
- Since:
- 1.1
- See Also:
Component.getPreferredSize()
,LayoutManager
-
minimumSize
@Deprecated public Dimension minimumSize()
Deprecated. As of JDK version 1.1, replaced bygetMinimumSize()
.Description copied from class:Component
Returns the minimum size of this component.- Overrides:
minimumSize
in classComponent
- Returns:
- the minimum size of this component
-
addActionListener
public void addActionListener(ActionListener l)
Adds the specified action listener to receive action events from this text field. If l is null, no exception is thrown and no action is performed.Refer to AWT Threading Issues for details on AWT's threading model.
- Parameters:
l
- the action listener.- Since:
- 1.1
- See Also:
removeActionListener(java.awt.event.ActionListener)
,getActionListeners()
,ActionListener
-
removeActionListener
public void removeActionListener(ActionListener l)
Removes the specified action listener so that it no longer receives action events from this text field. If l is null, no exception is thrown and no action is performed.Refer to AWT Threading Issues for details on AWT's threading model.
- Parameters:
l
- the action listener.- Since:
- 1.1
- See Also:
addActionListener(java.awt.event.ActionListener)
,getActionListeners()
,ActionListener
-
getActionListeners
public ActionListener[] getActionListeners()
Returns an array of all the action listeners registered on this textfield.- Returns:
- all of this textfield's
ActionListener
s or an empty array if no action listeners are currently registered - Since:
- 1.4
- See Also:
addActionListener(java.awt.event.ActionListener)
,removeActionListener(java.awt.event.ActionListener)
,ActionListener
-
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
Returns an array of all the objects currently registered asFooListener
s upon thisTextField
.FooListener
s are registered using theaddFooListener
method.You can specify the
listenerType
argument with a class literal, such asFooListener.class
. For example, you can query aTextField t
for its action listeners with the following code:ActionListener[] als = (ActionListener[])(t.getListeners(ActionListener.class));
If no such listeners exist, this method returns an empty array.- Overrides:
getListeners
in classTextComponent
- Type Parameters:
T
- the type of the listeners- Parameters:
listenerType
- the type of listeners requested; this parameter should specify an interface that descends fromjava.util.EventListener
- Returns:
- an array of all objects registered as
FooListener
s on this textfield, or an empty array if no such listeners have been added - Throws:
ClassCastException
- iflistenerType
doesn't specify a class or interface that implementsjava.util.EventListener
- Since:
- 1.3
- See Also:
getActionListeners()
-
processEvent
protected void processEvent(AWTEvent e)
Processes events on this text field. If the event is an instance ofActionEvent
, it invokes theprocessActionEvent
method. Otherwise, it invokesprocessEvent
on the superclass.Note that if the event parameter is
null
the behavior is unspecified and may result in an exception.- Overrides:
processEvent
in classTextComponent
- Parameters:
e
- the event- Since:
- 1.1
- See Also:
ActionEvent
,processActionEvent(java.awt.event.ActionEvent)
-
processActionEvent
protected void processActionEvent(ActionEvent e)
Processes action events occurring on this text field by dispatching them to any registeredActionListener
objects.This method is not called unless action events are enabled for this component. Action events are enabled when one of the following occurs:
- An
ActionListener
object is registered viaaddActionListener
. - Action events are enabled via
enableEvents
.
Note that if the event parameter is
null
the behavior is unspecified and may result in an exception.- Parameters:
e
- the action event- Since:
- 1.1
- See Also:
ActionListener
,addActionListener(java.awt.event.ActionListener)
,Component.enableEvents(long)
- An
-
paramString
protected String paramString()
Returns a string representing the state of thisTextField
. This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations. The returned string may be empty but may not benull
.- Overrides:
paramString
in classTextComponent
- Returns:
- the parameter string of this text field
-
getAccessibleContext
public AccessibleContext getAccessibleContext()
Gets the AccessibleContext associated with this TextField. For text fields, the AccessibleContext takes the form of an AccessibleAWTTextField. A new AccessibleAWTTextField instance is created if necessary.- Specified by:
getAccessibleContext
in interfaceAccessible
- Overrides:
getAccessibleContext
in classTextComponent
- Returns:
- an AccessibleAWTTextField that serves as the AccessibleContext of this TextField
- Since:
- 1.3
-
-