Transparencia per pixel pelo método setWindowOpacity();

Saudações aos camaradas javeiros.
Pessoal, eu estava criando uns frames semi-transparentes, e confesso que o efeito é muito bonito.
O problema é quando tento usar o método setWindowOpaque na tentativa de selecionar quais objetos ficarão transparentes ou não, pois todo o frame se torna translúcido.
Vejam o código abaixo:

import java.awt.Dimension;       
import javax.swing.JButton;  
import javax.swing.JFrame;  
import javax.swing.JPanel;        
import com.sun.awt.AWTUtilities; 
  
public class Abertura extends JPanel {  
 
   private static final long serialVersionUID = 1L;  
   private JButton jcomp1;  
 
   public Abertura() {  
       jcomp1 = new JButton("newButton");  

       setPreferredSize(new Dimension(624, 541));  
       setLayout(null);  
 
       add(jcomp1);  
  
       jcomp1.setBounds(270, 260, 100, 25);  
 
   }  
 
   public static void main(String[] args) {  
       JFrame frame = new JFrame("MyPanel");  
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
       frame.getContentPane().add(new Abertura());  
       frame.pack();  
       frame.setVisible(true); 
           
       AWTUtilities.setWindowOpaque (frame, true);// É aqui que eu deveria deixar o botão opaco, só não sei como

       AWTUtilities.setWindowOpacity(frame, 0.5f); 


   }  

}

Conforme o código acima, todo o frame fica translúcido, inclusive o botão.
Gostaria de saber como configuro o método setWindoeOpaque para conseguir o efeito desejado.
Grato