求java的JTextField类和JTextArea类的所有方法。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求java的JTextField类和JTextArea类的所有方法。相关的知识,希望对你有一定的参考价值。

我在sun中国技术社区下的帮助文档提供的方法不够全,没有想要的方法。因本人现在用手机上网,无法下载更全的帮助文档,所以求java的JTextField类和JTextArea类的所有方法。要有中文解说其用法和用途。谢谢!

JTextField:
protected void actionPropertyChanged(Action action, String propertyName)
更新文本字段的状态以响应关联动作中的属性更改。
void addActionListener(ActionListener l)
添加指定的操作侦听器以从此文本字段接收操作事件。
protected void configurePropertiesFromAction(Action a)
在此文本字段上设置属性,以匹配指定 Action 中的值。
protected PropertyChangeListener createActionPropertyChangeListener(Action a)
创建并返回一个负责侦听指定 Action 的更改以及更新适当属性的 PropertyChangeListener。
protected Document createDefaultModel()
如果没有显式给出构造时要使用的模型,则创建该模型的默认实现。
protected void fireActionPerformed()
通知对此事件类型需要的所有侦听器。
AccessibleContext getAccessibleContext()
获取与此 JTextField 关联的 AccessibleContext。
Action getAction()
返回此 ActionEvent 源当前设置的 Action,如果没有设置 Action 则返回 null。
ActionListener[] getActionListeners()
返回通过 addActionListener() 添加到此 JTextField 中的所有 ActionListener 的数组。
Action[] getActions()
获取编辑器的命令列表。
int getColumns()
返回此 TextField 中的列数。
protected int getColumnWidth()
返回列宽度。
int getHorizontalAlignment()
返回文本的水平对齐方式。
BoundedRangeModel getHorizontalVisibility()
获取文本字段的可见性。
Dimension getPreferredSize()
返回此 TextField 所需的首选大小 Dimensions。
int getScrollOffset()
获取滚动偏移量(以像素为单位)。
String getUIClassID()
获取 UI 的类 ID。
boolean isValidateRoot()
调用来自文本字段本身的 revalidate,将通过验证文本字段来处理,如果文本字段不包含在 JViewport 中,则在这种情况下将返回 false。
protected String paramString()
返回此 JTextField 的字符串表示形式。
void postActionEvent()
通过将其指派给所有已注册的 ActionListener 对象来处理发生在此文本字段上的操作事件。
void removeActionListener(ActionListener l)
移除指定的操作侦听器,以便不再从此文本字段接收操作事件。
void scrollRectToVisible(Rectangle r)
将字段向左或向右滚动。
void setAction(Action a)
设置 ActionEvent 源的 Action。
void setActionCommand(String command)
设置用于操作事件的命令字符串。
void setColumns(int columns)
设置此 TextField 中的列数,然后验证布局。
void setDocument(Document doc)
将编辑器与一个文本文档关联。
void setFont(Font f)
设置当前字体。
void setHorizontalAlignment(int alignment)
设置文本的水平对齐方式。
void setScrollOffset(int scrollOffset)
获取滚动偏移量(以像素为单位)。

JTextArea:
void append(String str)
将给定文本追加到文档结尾。
protected Document createDefaultModel()
如果没有显式给出构造时要使用的模型,则创建该模型的默认实现。
AccessibleContext getAccessibleContext()
获取与此 JTextArea 关联的 AccessibleContext。
int getColumns()
返回 TextArea 中的列数。
protected int getColumnWidth()
获取列的宽度。
int getLineCount()
确定文本区中所包含的行数。
int getLineEndOffset(int line)
确定给定行结尾处的偏移量。
int getLineOfOffset(int offset)
将组件文本中的偏移量转换为行号。
int getLineStartOffset(int line)
确定给定行起始处的偏移量。
boolean getLineWrap()
获取文本区的换行策略。
Dimension getPreferredScrollableViewportSize()
如果此组件被嵌入 JScrollPane 中,则返回 viewport 的首选大小。
Dimension getPreferredSize()
返回 TextArea 的首选大小。
protected int getRowHeight()
定义行高的意义。
int getRows()
返回 TextArea 中的行数。
boolean getScrollableTracksViewportWidth()
如果 viewport 总是强制要求此 Scrollable 的宽度与 viewport 的宽度相匹配,则返回 true。
int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
显示逻辑行或列的组件应根据方向的值计算滚动增量,此滚动增量将完全显示一个新行或新列。
int getTabSize()
获取用于扩展选项卡的字符数。
String getUIClassID()
返回 UI 的类 ID。
boolean getWrapStyleWord()
获取换行方式(如果文本区要换行)。
void insert(String str, int pos)
将指定文本插入指定位置。
protected String paramString()
返回此 JTextArea 的字符串表示形式。
void replaceRange(String str, int start, int end)
用给定的新文本替换从指示的起始位置到结尾位置的文本。
void setColumns(int columns)
设置此 TextArea 中的列数。
void setFont(Font f)
设置当前字体。
void setLineWrap(boolean wrap)
设置文本区的换行策略。
void setRows(int rows)
设置此 TextArea 的行数。
void setTabSize(int size)
设置选项卡要扩大到的字符数。
void setWrapStyleWord(boolean word)
设置换行方式(如果文本区要换行)。
参考技术A java doc啊老大!
JTextField所提供的方法
void addActionListener(ActionListener l)
添加指定的操作侦听器以从此文本字段接收操作事件。
protected void configurePropertiesFromAction(Action a)
根据 Action 实例的值来设置 ActionEvent 源属性的工厂方法。
protected PropertyChangeListener createActionPropertyChangeListener(Action a)
创建 PropertyChangeListener 的工厂方法,在其 Action 实例上的属性发生变化时,PropertyChangeListener 用于更新 ActionEvent 源。
protected Document createDefaultModel()
如果没有显式给出构造时要使用的模型,则创建该模型的默认实现。
protected void fireActionPerformed()
通知对此事件类型感兴趣的所有侦听器。
AccessibleContext getAccessibleContext()
获得与此 JTextField 关联的 AccessibleContext。
Action getAction()
返回此 ActionEvent 源当前设置的 Action,如果没有设置 Action 则返回 null。
ActionListener[] getActionListeners()
返回通过 addActionListener() 添加到此 JTextField 中的所有 ActionListener 的数组。
Action[] getActions()
获取编辑器的命令列表。
int getColumns()
返回此 TextField 中的列数。
protected int getColumnWidth()
返回列宽度。
int getHorizontalAlignment()
返回文本的水平对齐方式。
BoundedRangeModel getHorizontalVisibility()
获取文本字段的可见性。
Dimension getPreferredSize()
返回此 TextField 所需的首选大小 Dimensions。
int getScrollOffset()
获取滚动偏移量(以像素为单位)。
String getUIClassID()
获取 UI 的类 ID。
boolean isValidateRoot()
调用来自文本字段本身的 revalidate,将通过验证文本字段来处理,如果文本字段不包含在 JViewport 中,则在这种情况下将返回 false。
protected String paramString()
返回此 JTextField 的字符串表示形式。
void postActionEvent()
通过将其指派给所有已注册的 ActionListener 对象来处理发生在此文本字段上的操作事件。
void removeActionListener(ActionListener l)
移除指定的操作侦听器,以便不再从此文本字段接收操作事件。
void scrollRectToVisible(Rectangle r)
将字段向左或向右滚动。
void setAction(Action a)
设置 ActionEvent 源的 Action。
void setActionCommand(String command)
设置用于操作事件的命令字符串。
void setColumns(int columns)
设置此 TextField 中的列数,然后验证布局。
void setDocument(Document doc)
将编辑器与一个文本文档关联。
void setFont(Font f)
设置当前字体。
void setHorizontalAlignment(int alignment)
设置文本的水平对齐方式。
void setScrollOffset(int scrollOffset)
获取滚动偏移量(以像素为单位)。

JTextArea提供的方法:
void append(String str)
将给定文本追加到文档结尾。
protected Document createDefaultModel()
如果没有显式给出构造时要使用的模型,则创建该模型的默认实现。
AccessibleContext getAccessibleContext()
获取与此 JTextArea 关联的 AccessibleContext。
int getColumns()
返回 TextArea 中的列数。
protected int getColumnWidth()
获取列的宽度。
int getLineCount()
确定文本区中所包含的行数。
int getLineEndOffset(int line)
确定给定行结尾处的偏移量。
int getLineOfOffset(int offset)
将组件文本中的偏移量转换为行号。
int getLineStartOffset(int line)
确定给定行起始处的偏移量。
boolean getLineWrap()
获取文本区的换行策略。
Dimension getPreferredScrollableViewportSize()
如果此组件被嵌入 JScrollPane 中,则返回 viewport 的首选大小。
Dimension getPreferredSize()
返回 TextArea 的首选大小。
protected int getRowHeight()
定义行高的意义。
int getRows()
返回 TextArea 中的行数。
boolean getScrollableTracksViewportWidth()
如果 viewport 总是强制要求此 Scrollable 的宽度与 viewport 的宽度相匹配,则返回 true。
int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
显示逻辑行或列的组件应根据方向的值计算滚动增量,此滚动增量将完全显示一个新行或新列。
int getTabSize()
获取用于扩展选项卡的字符数。
String getUIClassID()
返回 UI 的类 ID。
boolean getWrapStyleWord()
获取换行方式(如果文本区要换行)。
void insert(String str, int pos)
将指定文本插入指定位置。
protected String paramString()
返回此 JTextArea 的字符串表示形式。
void replaceRange(String str, int start, int end)
用给定的新文本替换从指示的起始位置到结尾位置的文本。
void setColumns(int columns)
设置此 TextArea 中的列数。
void setFont(Font f)
设置当前字体。
void setLineWrap(boolean wrap)
设置文本区的换行策略。
void setRows(int rows)
设置此 TextArea 的行数。
void setTabSize(int size)
设置选项卡要扩大到的字符数。
void setWrapStyleWord(boolean word)
设置换行方式(如果文本区要换行)。

java swing JTextField设置PlaceHolder [重复]

【中文标题】java swing JTextField设置PlaceHolder [重复]【英文标题】:java swing JTextField set PlaceHolder [duplicate] 【发布时间】:2021-07-06 17:24:31 【问题描述】:

我创建了一个 JTextField,现在我想在该 JTextField 上设置占位符,但我不知道怎么做?请帮忙。这是我的代码:

JTextField database=new JTextField("Enter Data Base Name");
database.setPreferredSize(database.getPreferredSize());
database.setText("");

【问题讨论】:

为了避免(我可能)误解占位符是“请输入文本”或图标在 JTextField 为空的情况下??? 占位符到底是什么意思?也许这个answer可以帮助你? 我编写了自己的组件。见这里:github.com/CollinAlpert/APIs/blob/master/javax/swing/… 【参考方案1】:

试试这个课程:

package playground;

import java.awt.*;

import javax.swing.*;
import javax.swing.text.Document;

@SuppressWarnings("serial")
public class PlaceholderTextField extends JTextField 

    public static void main(final String[] args) 
        final PlaceholderTextField tf = new PlaceholderTextField("");
        tf.setColumns(20);
        tf.setPlaceholder("All your base are belong to us!");
        final Font f = tf.getFont();
        tf.setFont(new Font(f.getName(), f.getStyle(), 30));
        JOptionPane.showMessageDialog(null, tf);
    

    private String placeholder;

    public PlaceholderTextField() 
    

    public PlaceholderTextField(
        final Document pDoc,
        final String pText,
        final int pColumns)
    
        super(pDoc, pText, pColumns);
    

    public PlaceholderTextField(final int pColumns) 
        super(pColumns);
    

    public PlaceholderTextField(final String pText) 
        super(pText);
    

    public PlaceholderTextField(final String pText, final int pColumns) 
        super(pText, pColumns);
    

    public String getPlaceholder() 
        return placeholder;
    

    @Override
    protected void paintComponent(final Graphics pG) 
        super.paintComponent(pG);

        if (placeholder == null || placeholder.length() == 0 || getText().length() > 0) 
            return;
        

        final Graphics2D g = (Graphics2D) pG;
        g.setRenderingHint(
            RenderingHints.KEY_ANTIALIASING,
            RenderingHints.VALUE_ANTIALIAS_ON);
        g.setColor(getDisabledTextColor());
        g.drawString(placeholder, getInsets().left, pG.getFontMetrics()
            .getMaxAscent() + getInsets().top);
    

    public void setPlaceholder(final String s) 
        placeholder = s;
    


【讨论】:

感谢您快速重播亲爱的 我发现占位符文本的呈现看起来不太理想。基于this SO answer about text rendering,我添加了静态字段:private static Map<?, ?> hints = (Map<?, ?>) Toolkit.getDefaultToolkit().getDesktopProperty("awt.font.desktophints"); 然后将设置渲染提示的行更改为if (hints != null) g.setRenderingHints(hints); else // set them directly as shown in the answer【参考方案2】:
JTextField searchText;

...

在构造函数中:

searchText = new JTextField("Search");
searchText.setForeground(Color.GRAY);
searchText.addFocusListener(new FocusListener() 
    @Override
    public void focusGained(FocusEvent e) 
        if (searchText.getText().equals("Search")) 
            searchText.setText("");
            searchText.setForeground(Color.BLACK);
        
    
    @Override
    public void focusLost(FocusEvent e) 
        if (searchText.getText().isEmpty()) 
            searchText.setForeground(Color.GRAY);
            searchText.setText("Search");
        
    
    );

【讨论】:

欢迎来到 Stack Overflow!通过提供一些围绕您的代码的上下文,这个答案可以变得更加有用。 当然,如果您输入文本“搜索”,然后单击返回该文本将消失的字段。 我喜欢这段代码,但文本只有在单击框后才可见,我之前也设置了文本来解决这个问题。有没有更好的办法? 我们只需要添加 searchText.setText("...");在 searchText = new JTextField("Search"); searchText.setForeground(Color.GRAY);【参考方案3】:

使用swingx jar 就这么简单

JTextArea txtMSISDNList = new JTextArea();  
PromptSupport.setPrompt("01197585960,01197585961", txtMSISDNList);

【讨论】:

这么简单的方法。非常感谢朋友。 你是最受欢迎的朋友。 您的链接已损坏。你有更新吗? 在这里下载jar文件:java2s.com/Code/Jar/s/Downloadswingx161jar.htm 不幸的是,swingx 不再处于开发阶段,因此使用风险自负(不确定它是否与 Java 8 兼容)。重要提示:无论 java2s.com 看起来多么值得信赖,永远不要从原始主页以外的任何地方下载 jar 文件(否则你永远不知道里面有什么!)!您仍然可以通过maven 获取jar(参见右侧的“下载”列)。【参考方案4】:

如果我理解了这个问题,Text Prompt 会显示您可以做到这一点的一种方法。

【讨论】:

感谢亲爱的camickr快速重播

以上是关于求java的JTextField类和JTextArea类的所有方法。的主要内容,如果未能解决你的问题,请参考以下文章

java:限制swing中的JTextField只能输入中文,字母,数字。

关于Java swing组件焦点的问题(我猜可能是焦点的问题) 高分求全面

Java - 检查 JTextField 是不是为空

java中怎么在文本框(JTextField)中输出Int型的数字

java:JTextField 上的完全受控输入

Java Swing:JTextField 没有按预期失去焦点