Java Swing-导致伪像的半透明组件

Java Swing-导致伪像的半透明组件,第1张

Java Swing-导致伪像的半透明组件

您需要告诉Swing组件是半透明的,因此在重新绘制更改的组件时,它也确实会绘制背景。为此,您的组件必须

false
isOpaque()
方法中返回(这可以通过
setOpaque(false)
没有子类重写
isOpaque
来执行其他 *** 作的方式来实现)。

有了它,它应该可以正常工作,而无需对其他所有内容进行任何手动重绘,如其他答案所建议的那样。(我已经做过一次。)

编辑:
原因是Swing使用了优化的重绘算法,仅重绘那些确实需要重绘的组件(例如,在某些输入后为JTextField)或在这些组件前面的组件,只要它们是不透明的即可。当需要重涂的组件不是不透明的(=用不透明的颜色填充整个空间)时,也需要重涂组件后面的组件。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5165359.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存