设置修改JavaFx密码框控件PasswordField的回显字符

背景

JavaFx密码框控件,最近碰到了“兼容性”问题,密码框控件在大部分机器运行正常,但是客户还有一部分用的是XP系统,在其电脑上出现了密码框中黑色圆点不显示的问题。

 

过程

解决这个问题的方案就是想办法将黑色圆点修改为其他可显示的字符,我想到了两种方式;

  • 不使用PasswordField,用其他控件(如TextField)来实现密码框的功能
  • 修改PasswordField,看能否修改其回显的字符

这里我是使用的是第二种方案,第一种方式我在网上找到代码,并没有实践,不知是否可行利用JavaFx开发RIA桌面应用-TextField替换PasswordField做密码框

通过对PasswordField的方法进行查看,我发现没有直接修改回显字符的方法,所以我看了源代码,最终发现设置回显字符使用的是 TextFieldSkin.java 类,代码如下:

...

/**
 * Text field skin.
 */
public class TextFieldSkin extends TextInputControlSkin<TextField, TextFieldBehavior> {
   
    ...

    // For use with PasswordField
    public static final char BULLET = '\u25cf';/* 这里就是圆点了 */

    /**
    
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值