我有以下行:
label.setBackground(new java.awt.Color(0, 150, 0, 50));
我将其放置在 MouseAdapter 内的 mouseReleased 方法中。
基本上,我想让标签在单击它时以半透明绿色突出显示。
我在面板中有几个标签,所有标签都添加了此 MouseAdapter。
我的问题是这样的:
-当我单击标签时,它显示半透明的绿色,但它显示的是另一个 JLabel 的背景,而不是我单击的 JLabel。
无论我点击哪个标签,它总是绘制同一标签的背景。
-每当我单击标签时,它都会重复相同的背景。 -奇怪的是,每次我单击 JLabel 时,绿色的不透明度似乎都会增加,就好像每次我单击新的 JLabel 时它都会在自身上绘制半透明的绿色。
关于发生的事情有什么提示吗?我应该尝试就此发布 SSCCE 吗?或者我缺少一个简单的答案。我还没有发布 SSCCE 的原因是我的代码很大并且分布在多个文件中,所以我必须先将其删除。
最佳答案
参见Backgrounds With Transparency对于可能出现的问题和一些解决方案。
关于java - 半透明 JLabel 未正确显示背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20361432/