`
niceo
  • 浏览: 109805 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

com.sun.awt.AWTUtilities / 透明和不规则 Swing 窗口

阅读更多
  在进行Swing外观调整的时候发现com.sun.awt.AWTUtilities
  这个有SUN公司直接提供的的东东。
 于是就像试验一下。
结果发现这东西只能在 jdk-6u10 的版本中才能体现出来的;

//-------------------------------------
在官方有这样一句话:

Java SE 6 Update N, 通常称作 Consumer JRE, 是 Sun 公司的努力成果,为重新配置 Java 将其作为开发富桌面应用程序的可行方法。在 Consumer JRE 中的新功能和主要改进列表相当广泛,并将特别闪耀的宝石隐藏在最新一周构建代码之一的发行说明中。

   在进一步研究之前,有一个非常重要的注意事项。由于 Consumer JRE 被官方认为是对稳定 JDK 发行的一个次要更新,因此在“公共”包中不能添加任何新的 API( 类、方法等等 ),例如 java.awt 或 javax.swing。在本文中讨论的所有 API 在新 com.sun.awt.AWTUtilities 类中出现,该类不是官方支持的部分 API。它在 Java SE 7 中的位置最有可能发生改变,签名方法可能在现在和最终的 Consumer JRE 发行之间发生轻微变化。

//-------------------------------------

所以当你的JDk版本不匹配的时候需要你将JDK插件更新。
可以在
https://jdk6.dev.java.net/6u10ea.html

Java SE 6 Runtime (JRE) Update 10 build 28 Windows Online Installer
Java SE 6 Runtime (JRE) Update 10 build 28 Windows Offline Installer
jdk-6u10-rc-bin-b28-windows-i586-debug-21_jul_2008.jar


下载安装以后:找到这样的一段在官方的代码运行结果令我很是满意。
代码如下:

import java.awt.*;
import javax.swing.*;

public class TranslucentWindow extends JFrame {
	public TranslucentWindow() {
		super("Test translucent window");
		this.setLayout(new FlowLayout());
		this.add(new JButton("test"));
		this.add(new JCheckBox("test"));
		this.add(new JRadioButton("test"));
		this.add(new JProgressBar(0, 100));

		this.setSize(new Dimension(400, 300));
		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 TranslucentWindow();
				w.setVisible(true);

        //要使窗口透明,您可以使用 AWTUtilities.setWindowOpacity(Window, float) 方法
				com.sun.awt.AWTUtilities.setWindowOpacity(w, 0.5f);
			}
		});
	}

}


//-----------------------------------------------
详细请参考:
https://jdk6.dev.java.net/6u10ea.html
http://developers.sun.com.cn/Java/translucent-and-shaped-swing-windows.html

//----------------------------------------------
这是几个测试的例子:
官方提供的:
  • windows.zip (35.5 KB)
  • 描述: 这是几个测试的例子(官方提供的): 可以作为参考进行编译查看。
  • 下载次数: 568
分享到:
评论

相关推荐

    javaSwing各种主题窗口

    UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel"); } catch (Exception e) { e.printStackTrace(); } ``` 值得注意的是,更改LookAndFeel可能会影响应用的性能,因为这需要额外的...

    透明和不规则

    ### Java Swing中的透明和不规则窗口技术解析 在软件开发领域,尤其是图形用户界面(GUI)设计中,跨平台框架的局限性和灵活性始终是开发者关注的焦点。Java Swing作为广泛使用的跨平台GUI工具箱之一,其对透明和不...

    java sun公司的中文教程

    ### Java Sun公司的中文教程知识点概览 #### 一、课程目标 ...此外,对于希望参加Sun Certified Java Programmer或Sun Certified Java Developer认证考试的人来说,本课程也是必不可少的学习资源。

    八皇后问题图形版(java创新版)

    在Swing中,可以使用`javax.swing.ImageIcon`类加载这些图片,并将它们添加到`JLabel`或` JButton`等组件中,以增强图形化的用户体验。 为了实现动态演示,程序可能包含一个延时函数,例如使用`java.util.Timer`或`...

    Java_GUI图形化用户界面编程的基础知识

    例如,可能会使用AWT的窗口和基本组件,再用Swing的组件来增强界面的美观度和交互性。同时,Swing还提供了JDesktopPane和JInternalFrame等组件,支持MDI(多文档界面)应用程序的设计。 总的来说,Java的GUI编程为...

    桌面应用程序架构.pdf

    这份资料由Sun Microsystems的专家团队编写,包括Scott Violet、Igor Kushnirskiy、Bino George和Brent Christian,他们在2004年的JavaOne会议上分享了这一主题。 ### 关键知识点概述 #### 1. JFC/Swing API线程...

    猜拳小游戏

    - `import javax.swing.JButton;`:导入JButton类,用于创建按钮。 - `import javax.swing.JFrame;`:导入JFrame类,用于创建窗口。 #### 2. 类定义 接着定义了一个名为`Game`的类,继承自`JFrame`,并实现了`...

    Java3D总结.pdf

    Java3D的核心是一个交互式的三维图形API,它能够与Java2D、Swing和AWT等Java组件结合使用,目标是实现一次编写,多处运行,适用于不同的软件平台和显示环境。其编程思想是基于场景图结构,即一种有向无环图,其中...

    ATM.rar_atm java图形

    2. AWT(Abstract Window Toolkit):这是Java早期的GUI库,它提供了基本的窗口和组件,如按钮、文本框等。AWT组件是与操作系统紧密相关的,因此它们具有更好的性能,但外观可能因操作系统而异。 3. Swing:是Java...

    用Java实现的分形程序

    Java作为一种跨平台的编程语言,非常适合这种类型的应用,因为它提供了丰富的图形用户界面(GUI)库,如AWT(Abstract Window Toolkit)和SWING。 1. **Java基础知识**:Java是Sun Microsystems开发的一种面向对象...

    Java基础知识总结.pdf

    - 标识符用于命名类、变量和方法,规则上不能以数字开头,且不能是关键字。 **常量与变量**: - 常量是不可改变的值,例如字符串和数值。 - 变量是存储数据的容器,其值可以被修改。变量的声明需指定数据类型和...

    Java程序设计B卷答案.doc

    - 事件监听器是Java AWT/Swing框架中的核心概念之一,用于响应用户界面中的各种事件。 9. **类修饰符**: - `abstract`:抽象类不能被实例化,主要用于提供一个基类供子类继承。 - `final`:最终类不能被继承,...

    Eclipse_Swt_Jface_核心应用_部分19

    1.5 Sun AWT/Swing与Eclipse SWT 7 1.5.1 Swing与SWT的比较 7 1.5.2 SWT的优势和不足 8 1.6 SWT与JFace、Eclipse 9 1.6.1 JFace是SWT的扩展 9 1.6.2 Eclipse的UI界面基于JFace 10 1.7 本章小结 10 第2...

    Java软件开发实战 Java基础与案例开发详解 1-4 java SE环境安装和配置 共11页.pdf

    - **官方下载地址**:http://java.sun.com/javase/downloads/index.jsp - **安装位置**:默认安装在`C:\Program Files\Java\jdk1.6.0`。 - **安装目录介绍**:`bin`目录包含常用的命令工具,如`javac.exe`、`java...

    Sun Java培训教程中文版

    - 标识符的命名规则与限制条件,例如首字母不能是数字。 - **面向对象的概念:** - 类与对象的概念,理解封装、继承和多态的基本原理。 - 抽象类与接口的使用场景及其区别。 - 设计模式简介,如单例模式、工厂...

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

    16. **布局管理器** - Java AWT 中的布局管理器包括FlowLayout、BorderLayout、CardLayout和GridLayout,用于自动排列组件。 17. **Excel 退出** - 在 Excel 2000 中,按Ctrl+F4键关闭当前工作簿,而非退出整个程序...

    优秀程序员必须看得学习笔记

    - **SCJD**: Sun Certified Java Developer,增加了对JDBC和Swing框架的理解。 - **SCWCD**: Sun Certified Web Component Developer,专注于Servlet和JSP,即Java EE的相关技术。 - **SCEA**: Sun Certified ...

    Java code Java code

    例如,`java.util` 包含许多实用工具类,`java.awt` 和 `javax.swing` 用于图形用户界面。文件名中的前缀可能暗示了它们属于特定的自定义包。 4. **异常处理**:Java提供了异常处理机制,通过try-catch-finally块来...

Global site tag (gtag.js) - Google Analytics