Swing 透明窗体和不规则窗体

透明窗体实现如下:

public class TranslucentWindow extends JFrame { public TranslucentWindow() { super("透明窗体"); this.setLayout(new FlowLayout()); this.add(new JButton("按钮")); this.add(new JCheckBox("复选按钮")); this.add(new JRadioButton("单选按钮")); this.add(new JProgressBar(20, 100)); this.setSize(new Dimension(400, 300)); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { JFrame.setDefaultLookAndFeelDecorated(true); SwingUtilities.invokeLater(new Runnable() { public void run() { Window w = new TranslucentWindow(); w.setVisible(true); com.sun.awt.AWTUtilities.setWindowOpacity(w, 0.6f); } }); } }

 

不规则窗体实现如下:

public class ShapedWindow extends JFrame { public ShapedWindow() { super("不规则窗体"); this.setLayout(new FlowLayout()); this.add(new JButton("按钮")); this.add(new JCheckBox("复选按钮")); this.add(new JRadioButton("单选按钮")); this.add(new JProgressBar(0, 100)); this.setSize(new Dimension(400, 400)); this.setLocationRelativeTo(null); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { JFrame.setDefaultLookAndFeelDecorated(true); SwingUtilities.invokeLater(new Runnable() { public void run() { Window w = new ShapedWindow(); w.setVisible(true); com.sun.awt.AWTUtilities.setWindowShape(w, new Ellipse2D.Double(0, 0, w.getWidth(), w.getHeight())); com.sun.awt.AWTUtilities.setWindowOpacity(w, 0.93f); } }); } }

你可能感兴趣的:(swing,String,null,Class)