将颜色设置为白色的Swing drawString()绘制为黑色

时间:2014-08-19 19:13:25

标签: java swing kde

有谁知道为什么?可能是因为我的反白黑KDE主题?如果是这样,我怎样才能以精确指定的颜色绘制字符串?

P.S。在制作屏幕截图时,一旦我看到文字正确为白色!但只有一次。 WTF?

P.P.S。看起来在第一次油漆事件中,文字是用黑色绘制的,之后,其他重新绘制的颜色应该是白色的。为什么呢?

enter image description here

import javax.swing.*;
import java.awt.*;

public class ColorTest extends JComponent {

    public static void main(String[] args) {
        JFrame frame = new JFrame();
        frame.add((new ColorTest()));
        frame.setSize(240, 320);
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }

    @Override protected void paintComponent(Graphics g) {
        g.setColor(Color.WHITE);
        g.drawString("WHITE", 50, 40);
        g.setColor(Color.BLACK);
        g.drawString("BLACK", 50, 80);
        g.setColor(Color.RED);
        g.drawString("RED", 50, 120);
        g.setColor(Color.GREEN);
        g.drawString("GREEN", 50, 160);
        g.setColor(Color.BLUE);
        g.drawString("BLUE", 50, 200);
    }
}

0 个答案:

没有答案