
- SWING Tutorial
- SWING - Home
- SWING - Overview
- SWING - Environment
- SWING - Controls
- SWING - Event Handling
- SWING - Event Classes
- SWING - Event Listeners
- SWING - Event Adapters
- SWING - Layouts
- SWING - Menu
- SWING - Containers
- SWING Useful Resources
- SWING - Quick Guide
- SWING - Useful Resources
- SWING - Discussion
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
SWING - JTextField Class
Introduction
The class JTextField is a component which allows the editing of a single line of text.
Class Declaration
Following is the declaration for javax.swing.JTextField class −
public class JTextField extends JTextComponent implements SwingConstants
Field
Following are the fields for javax.swing.JList class −
static String notifyAction − Name of the action to send notification that the contents of the field have been accepted.
Class Constructors
Sr.No. | Constructor & Description |
---|---|
1 |
JTextField() Constructs a new TextField. |
2 |
JTextField(Document doc, String text, int columns) Constructs a new JTextField that uses the given text storage model and the given number of columns. |
3 |
JTextField(int columns) Constructs a new empty TextField with the specified number of columns. |
4 |
JTextField(String text) Constructs a new TextField initialized with the specified text. |
5 |
JTextField(String text, int columns) Constructs a new TextField initialized with the specified text and columns. |
Class Methods
Sr.No. | Method & Description |
---|---|
1 |
protected void actionPropertyChanged(Action action, String propertyName) Updates the textfield's state in response to property changes in associated action. |
2 |
void addActionListener(ActionListener l) Adds the specified action listener to receive action events from this textfield. |
3 |
protected void configurePropertiesFromAction(Action a) Sets the properties on this textfield to match those in the specified Action. |
4 |
protected PropertyChangeListener createActionPropertyChangeListener(Action a) Creates and returns a PropertyChangeListener that is responsible for listening for changes from the specified Action and updating the appropriate properties. |
5 |
protected Document createDefaultModel() Creates the default implementation of the model to be used at construction if one isn't explicitly given. |
6 |
protected void fireActionPerformed() Notifies all listeners that have registered interest for notification on this event type. |
7 |
AccessibleContext getAccessibleContext() Gets the AccessibleContext associated with this JTextField. |
8 |
Action getAction() Returns the currently set Action for this ActionEvent source, or null if no Action is set. |
9 |
ActionListener[] getActionListeners() Returns an array of all the ActionListeners added to this JTextField with addActionListener(). |
10 |
Action[] getActions() Fetches the command list for the editor. |
11 |
int getColumns() Returns the number of columns in this TextField. |
12 |
protected int getColumnWidth() Returns the column width. |
13 |
int getHorizontalAlignment() Returns the horizontal alignment of the text. |
14 |
BoundedRangeModel getHorizontalVisibility() Gets the visibility of the text field. |
15 |
Dimension getPreferredSize() Returns the preferred size Dimensions needed for this TextField. |
16 |
int getScrollOffset() Gets the scroll offset, in pixels. |
17 |
String getUIClassID() Gets the class ID for a UI. |
18 |
boolean isValidateRoot() Calls to revalidate that come from within the textfield itself will be handled by validating the textfield, unless the textfield is contained within a JViewport, in which case this returns false. |
19 |
protected String paramString() Returns a string representation of this JTextField. |
20 |
void postActionEvent() Processes action events occurring on this textfield by dispatching them to any registered ActionListener objects. |
21 |
void removeActionListener(ActionListener l) Removes the specified action listener so that it no longer receives action events from this textfield. |
22 |
void scrollRectToVisible(Rectangle r) Scrolls the field left or right. |
23 |
void setAction(Action a) Sets the Action for the ActionEvent source. |
24 |
void setActionCommand(String command) Sets the command string used for action events. |
25 |
void setColumns(int columns) Sets the number of columns in this TextField, and then invalidate the layout. |
26 |
void setDocument(Document doc) Associates the editor with a text document. |
27 |
void setFont(Font f) Sets the current font. |
28 |
void setHorizontalAlignment(int alignment) Sets the horizontal alignment of the text. |
29 |
void setScrollOffset(int scrollOffset) Sets the scroll offset, in pixels. |
Methods Inherited
This class inherits methods from the following classes −
- javax.swing.text.JTextComponent
- javax.swing.JComponent
- java.awt.Container
- java.awt.Component
- java.lang.Object
JTextField Example
Create the following Java program using any editor of your choice in say D:/ > SWING > com > tutorialspoint > gui >
SwingControlDemo.java
package com.tutorialspoint.gui; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SwingControlDemo { private JFrame mainFrame; private JLabel headerLabel; private JLabel statusLabel; private JPanel controlPanel; public SwingControlDemo(){ prepareGUI(); } public static void main(String[] args){ SwingControlDemo swingControlDemo = new SwingControlDemo(); swingControlDemo.showTextFieldDemo(); } private void prepareGUI(){ mainFrame = new JFrame("Java Swing Examples"); mainFrame.setSize(400,400); mainFrame.setLayout(new GridLayout(3, 1)); mainFrame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent windowEvent){ System.exit(0); } }); headerLabel = new JLabel("", JLabel.CENTER); statusLabel = new JLabel("",JLabel.CENTER); statusLabel.setSize(350,100); controlPanel = new JPanel(); controlPanel.setLayout(new FlowLayout()); mainFrame.add(headerLabel); mainFrame.add(controlPanel); mainFrame.add(statusLabel); mainFrame.setVisible(true); } private void showTextFieldDemo(){ headerLabel.setText("Control in action: JTextField"); JLabel namelabel= new JLabel("User ID: ", JLabel.RIGHT); JLabel passwordLabel = new JLabel("Password: ", JLabel.CENTER); final JTextField userText = new JTextField(6); final JPasswordField passwordText = new JPasswordField(6); JButton loginButton = new JButton("Login"); loginButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String data = "Username " + userText.getText(); data += ", Password: " + new String(passwordText.getPassword()); statusLabel.setText(data); } }); controlPanel.add(namelabel); controlPanel.add(userText); controlPanel.add(passwordLabel); controlPanel.add(passwordText); controlPanel.add(loginButton); mainFrame.setVisible(true); } }
Compile the program using the command prompt. Go to D:/ > SWING and type the following command.
D:\SWING>javac com\tutorialspoint\gui\SwingControlDemo.java
If no error occurs, it means the compilation is successful. Run the program using the following command.
D:\SWING>java com.tutorialspoint.gui.SwingControlDemo
Verify the following output.
