Swing 透明窗体实现

今天在论坛里回答问题的时候,网友问了个问题,swing怎样实现窗口透明。

这里需要用到第三方的jna。

jna-3.3.0-platform.jar包下载:点击打开链接

废话先少说了,先把代码贴出来:

import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;

import javax.swing.JFrame;
import javax.swing.JPanel;

import com.sun.jna.platform.WindowUtils;


public class JFrameBackground {

	public static void main(String[] args) {
        JFrame frame = new JFrame();  
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
        frame.setBounds(500, 500, 300, 300);  
        System.setProperty("sun.java2d.noddraw","true");
        WindowUtils.setWindowAlpha(frame, 0.5f);
        JPanel pane = new JPanel() {  
            @Override  
            public void paint(Graphics g) {  
                super.paint(g);  
  
                g.setColor(Color.red);  
                g.fill3DRect(10, 10, 100, 100, true);  
            }  
        };  
  
        frame.setContentPane(pane);  
        frame.setVisible(true);  
	}
}

效果: Swing 透明窗体实现_第1张图片

你可能感兴趣的:(Swing 透明窗体实现)