我是 Java 的新手,我想做的很简单,我想让 JLabel
在鼠标进入标签区域时具有透明颜色,并使标签恢复其原始颜色当鼠标离开标签区域时。
我想这很简单并且在我的代码中有效但是当鼠标在标签上时我得到了一个奇怪的效果。这是我使用的代码:
在标签的mouseEntered
事件中:
private void lblNuevoCLMouseEntered(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
bgcolor=(new Color(0, 0, 0, 100));
lblNuevoCL.setBackground(bgcolor);
}
在 mouseExited 事件中:
private void lblNuevoCLMouseExited(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
lblNuevoCL.setBackground(new java.awt.Color(206,206,255));
}
这是当鼠标进入标签(图像左侧的方 block )时发生的情况: 它使用带有 alpha 的 RGB 颜色变得透明,但除了变得透明 如图所示,标签上出现奇怪的背景。
最佳答案
使 JLabel
不透明以允许设置背景色
lblNuevoCL.setOpaque(true);
关于java - 如何修复 JLabel 透明度错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19121447/