使用JTextPane的自定义颜色的工件显示背景颜色

时间:2016-08-12 23:39:01

标签: java swing jtextpane

使用自定义颜色后:

Color bg = new Color(0f,0f,0f,0.5f);

对于JTextPane背景,我可以看到JTextPane的背景显示的部分背景来自Jlabel,其中包含JTextPane

发生了什么:

Image of problem

因此JTextPane背景的底部部分没问题,但文字背后的最重要部分却存在一些问题。

我该如何解决?我是否因为JTextPane的简单透明背景使用自定义颜色而犯了错误?

该计划的这部分代码:

t = new JTextPane();
SimpleAttributeSet style = new SimpleAttributeSet();
StyleConstants.setAlignment(style , StyleConstants.ALIGN_CENTER);
StyleConstants.setForeground(style , Color.white);
StyleConstants.setFontFamily(style, "Times new Roman");
StyleConstants.setFontSize(style, 20);
StyleConstants.setBold(style, true);
t.setParagraphAttributes(style,true);
t.setText(" " + text.getT1().get(0).toUpperCase());
t.setOpaque(true);
Color bg = new Color(0f,0f,0f,0.5f);
t.setBackground(bg);
t.setEditable(false);
t.setBounds(250, 400, 300, 50);
animation.add(t);

1 个答案:

答案 0 :(得分:0)

我想我遇到了类似的问题。您需要至少使JTextPane的容器变为不透明且没有透明度。否则Swing会非常错误地计算背景。您可能会将此报告为我认为的错误。