`
walsece
  • 浏览: 138398 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Swing最新特性:增加透明窗体及不规则窗体功能

阅读更多

注:本文为原创文章,转载时请注明转载地址。


最新的jdk-6u10版本已经在进行beta测试,对于swing来说,在此版本中增加了两个重要的功能:透明窗体和不规则窗体。这两个功能使得swing也可以做出vista下的玻璃效果来了,
jdk-6u10还没有正式发布,可以在http://download.java.net/jdk6/binaries/进行下载
透明窗体:

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);
            }
        });
    }

}

 

 

10
4
分享到:
评论
1 楼 郭广川 2010-10-25  
楼主请问这个com.sun.awt.AWTUtilities包在哪里呀,我用的是javEE可是里面说找不到这个类,我在网上搜了很久发现许多同志也有类似的问题,这是怎么回事呀?呵呵,等待您的回复

相关推荐

    Swing 实现透明窗体

    在Swing中实现透明窗体是一个常见的需求,特别是在设计现代、美观的应用程序时,透明效果往往可以增加视觉吸引力。 标题中的“Swing实现透明窗体”主要涉及以下几个知识点: 1. **AWT和Swing的区别**:在Java中,...

    美丽的java swing不规则登录窗体(JDK1.6以上含源码)

    一个非常漂亮的java swing窗体程序

    用Java实现透明和不规则窗体

    用Java实现透明和不规则窗体,区别Java awt和swing组件

    java_swing窗体布局

    GridBagLayout是最灵活的布局管理器,允许组件占据不规则的网格区域,并且可以灵活地对齐。每个组件都关联一个GridBagConstraints对象,用于定义组件的大小、位置和对齐方式。GridBagLayout可以创建复杂的界面布局...

    Java Swing根据图片创建不规则窗体(二)

    NULL 博文链接:https://yshjava.iteye.com/blog/1325330

    如何绘制不规则窗体!!

    在计算机编程领域,不规则窗体(Irregular Windows)是指那些形状并非标准矩形的窗口。这类窗体的实现通常需要深入理解图形用户界面(GUI)的底层原理,特别是图形绘制和窗口渲染技术。本教程将详细介绍如何创建一个...

    Java俄罗斯方块(不规则窗体)

    开发者可能使用了Java的Swing或JavaFX库来实现图形用户界面(GUI),这两个库都提供了丰富的组件和功能,可以方便地创建出复杂的不规则窗体。 在Java编程中,实现俄罗斯方块的关键部分包括以下几个知识点: 1. **...

    java swing汉诺塔窗体小游戏

    汉诺塔游戏是一种经典的逻辑谜题,源自印度的古老传说,玩家需要将一系列盘子从一根柱子移动到另一根柱子,遵循“每次只能移动一个盘子”和“大盘子不能位于小盘子之上”的规则。在这个Java Swing实现的汉诺塔窗体小...

    基于Java Swing窗体设计的连连看小程序

    在“基于Java Swing窗体设计的连连看小程序”这个项目中,开发者利用Swing的组件和API来构建了一个经典游戏——连连看的界面和逻辑。Swing提供了一系列预定义的组件,如按钮、文本框、面板等,使得开发者可以方便地...

    Java开发的窗体小游戏《连连看》

    - **Swing库**:Java Swing库提供了丰富的组件来创建图形用户界面,如JFrame、JPanel、 JButton等,这些在连连看游戏中不可或缺。 - **事件监听**:玩家的点击操作需要通过事件监听器处理,例如,当玩家点击棋子时...

    java窗体设计+GUI经典代码全放送

    Java窗体设计与GUI(图形用户界面)是Java编程中不可或缺的一部分,主要用于创建具有交互性的应用程序。本资源“java窗体设计+GUI经典代码全放送”可能包含了一系列用于展示和学习Java GUI编程的示例代码。下面我们...

    JwWindow

    本项目“JwWindow”由Javen Wong创建,主要探讨了如何利用SWT实现不规则窗体,即非标准矩形形状的窗口。不规则窗体通常用于创建具有独特视觉效果的应用程序,例如使用自定义的背景图片来定义窗口的形状。 首先,让...

    2021-2022计算机二级等级考试试题及答案No.341.docx

    24. Access表设计视图操作:在Access的表设计视图中,可以修改字段类型、设置索引和增加字段,但不能直接删除记录,需要在数据表视图中进行。 25. C语言程序运行结果:给定的C程序中,k的值为5,n的值未定义,程序...

    Java swing潜艇大战小游戏

    Swing是Java的标准GUI(图形用户界面)库,它提供了丰富的组件和工具,使得开发者能够创建出功能完备且具有吸引力的用户界面。下面将详细介绍这个项目中的相关知识点。 1. **Java基础**:首先,了解Java编程的基本...

    2021-2022计算机二级等级考试试题及答案No.18120.docx

    13. **Word表格**:Word支持创建规则和不规则的表格。 14. **硬件定义**:硬件是计算机系统中实际的物理设备。 15. **Map集合操作**:在Map集合中,`put()`用于添加键值对,`get()`用于根据键获取对应的值。 16. ...

    java窗体飞机大战(仿微信转)

    《Java实现的窗体飞机大战游戏详解》 Java作为一种跨平台、面向对象的编程语言,其丰富的类库和强大的功能使其在游戏开发领域也有广泛的应用。本篇文章将深入解析一个基于Java开发的“飞机大战”游戏,这款游戏高度...

    2021-2022计算机二级等级考试试题及答案No.4234.docx

    - **自动窗体:** Access提供的快速创建窗体的方式。 **题目解析:** - 创建的自动窗体类型包括纵栏式、数据表和表格式,但不包括新奇式。 ### 26. 类的继承与接口实现 **知识点概述:** - **类的继承与接口实现...

    2021-2022计算机二级等级考试试题及答案No.14668.docx

    4. 自动窗体向导:在数据库管理软件中,自动窗体向导可以创建不同类型的窗体,但不包括“新奇式”。 5. 浮点数运算:浮点数运算可能存在精度问题,题目中`c3=1.0/c2*c1`,由于`1.0`是浮点数,所以结果也会是浮点数...

    Java Swing 布局

    网格袋布局是最灵活的布局管理器,允许组件占据不规则的空间。它使用`GridBagConstraints`类来控制每个组件的位置和大小。 6. 空布局(NullLayout) 空布局允许开发者完全手动控制组件的位置和大小,适用于需要精确...

    2021-2022计算机二级等级考试试题及答案No.17461.docx

    7. 窗体类型:窗体的类型包括纵栏式、表格式、数据表窗体,不包括模块式窗体(C)。 8. HTTP响应MIME消息体:HTTP响应中,MIME消息体可以同时包含文本、图像、视频、音频等多种类型的数据(D)。 9. 输入设备:...

Global site tag (gtag.js) - Google Analytics