gpt4 book ai didi

java - 具有半透明 JTextArea 的工件

转载 作者:行者123 更新时间:2023-12-01 22:40:00 26 4
gpt4 key购买 nike

我尝试在图像上制作半透明的JTextArea,但是当在其上写入文本时,有时我会在最后一个字母后面出现烦人的矩形,如果我用鼠标单击文本,则会出现该矩形。

我正在尝试以这种方式提高透明度:

textArea.setBackground(new Color(0, 0, 0, 200));

我也尝试了setOpaque(false),这不是我想要的,但没有出现矩形。

这里是工件的示例:

image

最佳答案

Swing只知道如何绘制完全不透明或完全透明的组件,当Swing遇到半透明颜色的组件时,它不知道它需要绘制它下面的组件,你必须作弊。

首先将颜色设置为完全不透明的值 ( Color.BLACK )。创建一个从 JTextArea 扩展的新类,将其不透明属性设置为 false ,覆盖它的 paintComponent方法,使用 AlphaComposite ,填写JTextArea的背景,使用Graphics#fillRect然后调用super.paintComponent ,确保已重置AlphaComposite首先

例如JTextArea not selectable, but still showing a "ghost" cursor

关于java - 具有半透明 JTextArea 的工件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26312785/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com