永发信息网

java中JPasswordField如何在输入之后获取输入的值,就是已经创建了一个密码框的组件,

答案:4  悬赏:10  手机版
解决时间 2021-11-15 10:47
  • 提问者网友:蓝莓格格巫
  • 2021-11-15 04:16
java中JPasswordField如何在输入之后获取输入的值,就是已经创建了一个密码框的组件,
最佳答案
  • 五星知识达人网友:千夜
  • 2021-11-15 04:30
你好
想要获取,肯定要一个事件来触发,这样,触发的事件,可以设置为,敲击键盘事件,那么就可以为该密码框新增一个键盘敲击事件,事件的处理,就是点击之后,取得密码框的值。追问麻烦您能说的具体一点吗?我在密码框那里设置了键盘事件,然后怎么做呢?还是获取不到啊追答你可以设置一个全局变量,就是静态属性,通过键盘事件,将从密码框获取到的密码值获取出来(getPassword),存在静态变量里,这样,每一次敲击键盘,都会将密码框里最新的密码取出来放进去追问您说的键盘事件是自定义事件吗?还是keylistener,我添加的是keylistener,然后不知道在方法里面怎么写,我尝试设置全局变量,然后没按下一次键盘获取值先存入到一个char数组里面,输入完了再存放到开始设置的全局变量里面,但是还是不行追答你好,请参考

        //增加事件
        jPasswordField.addKeyListener(new KeyAdapter() {
            @Override
            public void keyReleased(KeyEvent e) {
                super.keyReleased(e);
                //获得密码框的密码
                char[] chars = jPasswordField.getPassword();
                //并设置到文本框里
                jTextField.setText(new String(chars));
            }
        }); 要注意的是,事件要设置为键弹上来的事件,否则获取不到最后输入的字符
追问谢谢~~
全部回答
  • 1楼网友:你可爱的野爹
  • 2021-11-15 06:38
当焦点离开密码框的时候,获取就行了,你找下java的焦点事件
  • 2楼网友:举杯邀酒敬孤独
  • 2021-11-15 05:54
getText()追问不行啊

我在文本框里面打字,然后调用getText方法根本就没有输出
  • 3楼网友:夜余生
  • 2021-11-15 04:58
给这个组件添加事件监听方法
监听器方法根据发送的动作来确定。
假设发生一个鼠标点击的动作,那么要给事件源添加鼠标的监听器方法。
假设你想让事件源获取焦点时,执行某一件事情,那么你就要给事件源添加焦点事件监听器方法。
addActionListener() ActionListener 动作监听器接口
addMouseListener() MouseListener 鼠标监听器接口
addMouseMotionListener() MouseMotionLIstener 鼠标移动监听器接口
addKeyListener() KeyListener 键盘监听器接口
你的情况可以添加动作监听器接口或者键盘监听器接口
代码如下:

JPasswordField jpf = new JPasswordField();//创建密码框
//设置事件监听
//实例化一个监听器,通过构造函数传参,该监听器是自定义的,定义方法参见下面的代码
ActionListener ac = new WriteActionListener(jpf);
//给密码框绑定监听事件
jpf.addActionListener(ac);

//实现了键盘事件监听器接口
public class WriteActionListener implements ActionListener {
private JPasswordField password;
public WriteActionListener(JPasswordField password){
this.password = password;
}
//实现接口中的抽象方法
public void actionPerformed(ActionEvent e) {
//得到输入的密码值

String password_value =(String) password.getText();
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯