Java 从密码字段“触发jLabel鼠标事件”;输入“;按键(自定义按钮)

Java 从密码字段“触发jLabel鼠标事件”;输入“;按键(自定义按钮),java,swing,netbeans,mouseevent,Java,Swing,Netbeans,Mouseevent,我创建了一个简单的jForm登录应用程序。此表单包含两个用于用户名和密码的文本字段,以及来自jLabel的另一个自定义按钮。在这个按钮中,我编写了所有事件侦听器,如mouseenterned、mouseexitted、mousePressed、mouseerelease和mouseClicked。我需要在用户输入密码后点击enter键时触发此mouseClicked事件 我该怎么做 另外,我使用了Robot类,它似乎不是一个合适的解决方案。要避免出现JButton,您会遇到很多麻烦。相反,使用J

我创建了一个简单的jForm登录应用程序。此表单包含两个用于用户名和密码的文本字段,以及来自jLabel的另一个自定义按钮。在这个按钮中,我编写了所有事件侦听器,如mouseenterned、mouseexitted、mousePressed、mouseerelease和mouseClicked。我需要在用户输入密码后点击enter键时触发此mouseClicked事件

我该怎么做


另外,我使用了Robot类,它似乎不是一个合适的解决方案。

要避免出现
JButton
,您会遇到很多麻烦。相反,使用
JButton
并调用
setboordpainted(false)
以获得
JLabel
的外观。然后可以调用,当根窗格中发生UI定义的激活事件(通常是Enter键)时,无论按钮是否具有键盘焦点,按钮“都将被激活。”


要避免出现
JButton
,您会遇到很多麻烦。相反,使用
JButton
并调用
setboordpainted(false)
以获得
JLabel
的外观。然后可以调用,当根窗格中发生UI定义的激活事件(通常是Enter键)时,无论按钮是否具有键盘焦点,按钮“都将被激活。”


“一个简单的jForm”在J2SE中没有这样的类。请不要像您的IDE.BTW那样说话-请看,为此,我将创建一个
ActionListener
,可以附加到
JButton
JTextField
。注意密码控件应该是
JPasswordField
。“一个简单的jForm”在J2SE中没有这样的类。请不要像您的IDE.BTW那样说话-请看,为此,我将创建一个
ActionListener
,可以附加到
JButton
JTextField
。注意密码控制应该是
JPasswordField
。非常感谢@trashgood的回答。我怎样才能摆脱这种奇怪的渐变背景呢jButton@AdeeshaSavindadeSilva:这是Mac功能,不是按钮功能。不在图像中。但是我的java按钮有一个渐变背景。我确实使用jButton1.setBackground(新颜色(0,0,0,0));,删除了它;。但这在图标图像周围形成了一个奇怪的边框。@adeeshavindadesilva:这听起来像是您选择的L&F的一个功能。请编辑您的问题,或提出一个新问题,包括一个显示您当前方法的。默认按钮有效吗?非常感谢您的回答@trashgood。我怎样才能摆脱这种奇怪的渐变背景呢jButton@AdeeshaSavindadeSilva:这是Mac功能,不是按钮功能。不在图像中。但是我的java按钮有一个渐变背景。我确实使用jButton1.setBackground(新颜色(0,0,0,0));,删除了它;。但这在图标图像周围形成了一个奇怪的边框。@adeeshavindadesilva:这听起来像是您选择的L&F的一个功能。请编辑您的问题,或提出一个新问题,包括一个显示您当前方法的。默认按钮有效吗?
JFrame f = new JFrame("ButtonTest");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JButton b = new JButton(new AbstractAction("Login") {

    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println(e);
    }
});
b.setBorderPainted(false);
f.getRootPane().setDefaultButton(b);
f.add(b);
f.pack();
f.setLocationRelativeTo(null);
f.setVisible(true);