如何解决在 mouseEntered() 方法上再次覆盖 paintBorder() 方法
我正在学习 Java 中的外观和感觉,所以我想要的是再次覆盖 paintBorder()
的 JTextField
。当我再说一遍时,这意味着我对 JTextField
有自己的外观和感觉,它具有弯曲的角(通过覆盖 paintBorder()
)然后我有一个 MouseAdapter
即 Hover 类来悬停某些一个类中的组件。
现在如何覆盖 Hover 类中的 paintBorder()
?
这是我的JTextField
我尝试在 Hover 类中使用 setBorder()
,但它会像这样在原始组件上创建边框。
那么谁能教我如何在 Hover 类上再次覆盖 paintBorder()
方法?或更改自定义边框颜色的更好解决方案?
额外代码:
//How I created the border at my own Look and Feel
Graphics2D g2 = (Graphics2D) g;
g2.setColor(Color.black);
g2.drawRoundRect(0,getWidth()-1,getHeight()-1,horizontalDiameter,verticalDiameter);//hDiameter and vDiamater are both 15
super.paintBorder(g);
在我的悬停课中:
if(e.getComponent() instanceof JTextField)
{
JTextField textField = (JTextField) e.getComponent();
textField.setBorder(BorderFactory.createLineBorder(Color.black));//The wrong code
//???
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。