java - 半透明 JLabel 未正确显示背景

标签 java swing jlabel

我有以下行:

        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/

相关文章:

java - Android Java实现1个页面2个按钮

java - GridBagLayout 中的对齐问题

java - 如何使用 JLabels 将文本一个放在另一个之上?

java - 卡片布局在处理过程后不会改变面板

java - 在 Eclipse 中调试 Android 上的死锁

java - 状态管理-【切换状态,重玩游戏】

java - 如何使 BoxLayout 中的垂直间隙变小?

Java Gui 组件不会出现在 JFrame 中

java - 选项而不是 JTable

java - 如何在for循环中设置JLabel的属性?