做的一个panel想给它添加鼠标指向它时颜色变深的效果,在整体上保持半透明,于是我给背景色添加了alpha值,我给多个控件添加了监听器后,发现它会把上一个悬停的控件包括背景显示出来,如图:有时候甚至会显示其他无关控件。 顺便一提我的控件都是使用setOpaque实现透明,用半透明遮罩实现半透明的。 把alpha值去掉后恢复了正常。 这是什么原因呢?有解决办法吗?望解答。 this.addMouseListener(new MouseAdapter() { @Override public void mouseEntered(MouseEvent e) { setOpaque(true); setBackground(new Color(150,163,192,200)); } @Override public void mouseExited(MouseEvent e) { setBackground(Color.white); setOpaque(false); } });
做一下刷新的操作试试,你这个鼠标事件都没有判断控件呀,这个是不是有点问题。
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y