AlphaComposite Прозрачность с перекрашиванием накладывается на черный

Итак, у меня есть изображение поверх другой панели, и это изображение прозрачно, так что вы можете видеть панель под ним. Что я'Я пытаюсь сделать это, используя repaint (), чтобы выцветать изображение (которое рисуется с помощью метода drawImage () в java.awt.Graphics) до тех пор, пока оно не станет полностью прозрачным, чтобы вы могли четко видеть панель под ним. На данный момент изображение просто становится черным, а не прозрачной текстурой.

Это немного моего кода прямо сейчас:

метод paintComponent:

public void paintComponent(Graphics g)
{
    super.paintComponent(g);
    float alpha = 1f-(.01f*(float)opcounter);
    Graphics2D g2d = (Graphics2D)g;
    g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_IN, alpha);
    g2d.drawImage(img, 0, 0, null);
}

метод actionPerformed, который вызывается для таймера

public void actionPerformed(ActionEvent e)
{
    opcouner++;
    panel.repaint();
}

Более длинная (без сокращений) версия моего кода: (включая paintComponent и класс Mover для таймера)

                            public void paintComponent(Graphics g)
            {   
                super.paintComponent(g);
                Dimension framesize = frame.getSize();
                this.setBounds(0,0,framesize.width, framesize.height-61);

                if (buff)
                {
                    //this.add(buffer);
                    if (opcounter 

Ответы на вопрос(1)

Ваш ответ на вопрос