当前位置: 首页 > 面试题库 >

java swing JTextField设置PlaceHolder

楚帅
2023-03-14
问题内容

我创建了一个JTextField,现在我想在该JTextField上设置占位符,但我不知道如何在JTextField上设置占位符?请帮助如何在JTextField上设置占位符文本

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

那是我现在在该代码中的文本字段代码,我想设置占位符,如何在该JTextField上设置占位符


问题答案:

试试这个课程:

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;
    }

}


 类似资料:
  • 我将设置为,并将其添加到我的。当我运行和echo,它们都给了我正确的信息。但是,当我运行libgdx安装程序时,它会给出以下错误:<code>错误:未设置JAVA_HOME,并且在路径中找不到任何“JAVA”命令。 请在您的环境中设置JAVA_HOME变量,以匹配您的JAVA安装位置。 有什么想法吗?

  • 设置菜单 可从主菜单进入设置当功能打开时,轻击以便将图标转成绿色。 连续心率。开关连续心率追踪。 飞行模式。切断健身追踪设备的所有无线通讯。 “请勿打扰”模式。禁用因手腕运动的显示屏亮起,并阻断来自您手机的智能通知。 心率 传感器模式。使用 A370 作为心率传感器,并配备心率接收设备。 关机。关闭设备。 重置当前蓝牙连接。若要使用任何蓝牙配件,需要与设备再次配对。 信息。查看您设备的 ID,固件

  • 一、简介   “设置"用于PHPCMS系统常用参数配置与管理员帐号维护。 二、功能演示 相关设置 管理员设置

  • 设置 设置包含:采集设置、站点设置、邮件发送设置、代理设置等 采集设置 开启自动采集、设置采集参数、图片本地化 页面渲染设置 代理设置 防止被屏蔽IP 翻译设置 支持百度翻译和有道翻译 站点设置 关闭前台首页、开启图片验证码 邮件发送设置 找回密码时使用

  • 设置 控制台有很多设置,这些设置都可以在控制面板中找到。点击右上角的齿轮按钮就能打开设置面板。 图 10. 设置面板

  • 设置 产品简介 用户可以在小程序设置页里控制授权状态,设置页位置:右上角-更多-关于-更多-设置 开放标准 对所有入驻小程序的企业开放 接口说明 jd.openSetting(OBJECT) 调起宿主客户端小程序设置界面,返回用户设置的操作结果,设置界面只会出现小程序已经向用户请求过的权限。 Object 参数说明: 参数 类型 必填 说明 success Function 否 接口调用成功的回调

  • Settings(配置设置) 是影响FreeMarker行为的已被命名的值。配置设置有很多, 例如:locale,number_format, default_encoding, template_exception_handler。可以参考 Configuration.setSetting(...)的Java API 文档 来查看配置设置的完整列表。 配置设置存储在 Configuration

  • 问题内容: 当我在Linux机器上使用默认的Java语言环境时,它带有美国语言环境设置,应在哪里进行更改以使其具有正确的语言环境? 问题答案: 我相信Java会从启动它的环境变量中收集这些信息,因此您需要确保正确设置LANG和LC_ *环境变量。 语言环境手册页包含有关所述环境变量的完整信息。