这是我的JButton代码。我在为此登录按钮设置背景颜色时遇到问题
JButton btnlogin = new JButton("Log in");
btnlogin.setFont(new Font("Lucida Grande", Font.BOLD, 14));
btnlogin.setAlignmentX(Component.CENTER_ALIGNMENT);
btnlogin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
EmailValidator emailValidator = new EmailValidator();
if(!emailValidator.validate(txtEmail.getText().trim())) {
System.out.print("Invalid Email ID");
validationtext.setText("Invalid Email");
}
}
});
btnlogin.setBounds(210, 432, 200, 48);
btnlogin.setBackground(new Color(66, 185, 217));
frame.getContentPane().add(btnlogin);
我已经尝试将不透明值设置为true,但仍然无法正常工作。
最佳答案
您只需要在设置背景颜色之前添加两行即可获得预期的结果:
通过编写以下命令将不透明值设置为true:btnlogin.setOpaque(true);
默认情况下,在JFrame中设置了边框,您必须根据自己的意愿进行更改。在这里,我使用的是MatteBorder的示例:btnlogin.setBorder(new MatteBorder(1, 1, 1, 1, (Color) new Color(0, 0, 0)));
然后,您将获得预期的结果。