显示时可以达到逐渐清晰直至完全显示,消失时逐渐变淡最终消失!使用到了JDK1.6中新特性的透明窗体,所以必须要使用JDK1.6或以上版本的JDK
效果如下:
代码如下:
import java.awt.Toolkit;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
import com.sun.awt.AWTUtilities;
/**
* 屏幕右下角出现渐隐渐显的提示框
* 使用到了JDK1.6中新特性的透明窗体,所以必须要使用JDK1.6或以上版本的JDK
* 案例性质:原创案例
* 案例来源:http://www.blackswansoft.com
* 作者:宋海康
*
* 功能如下:
* 1.窗体出现时逐渐清晰
* 2.停留一会儿时间之后会自动逐渐模糊直至消失
* 3.点击关闭按钮后逐渐模糊直至消失
* 4.提示内容支持html标签
* @author shk
*
*/
public class TranslucentFrame implements Runnable{
JFrame frame;
JLabel label1;
JEditorPane editorPane1;
private int width;//窗体宽度
private int height;//窗体高度
private int stayTime;//休眠时间
private String title,message;//消息标题,内容
private int style;//窗体样式
/**
* 渐隐渐显的提示框
*
* @param width 提示框宽度
* @param height 提示框高度
* @param stayTime 提示框停留时间
* @param style 提示框的样式
* 以下为样式可选值:
* 0 NONE 无装饰(即去掉标题栏)
* 1 FRAME 普通窗口风格
* 2 PLAIN_DIALOG 简单对话框风格
* 3 INFORMATION_DIALOG 信息对话框风格
* 4 ERROR_DIALOG 错误对话框风格
* 5 COLOR_CHOOSER_DIALOG 拾色器对话框风格
* 6 FILE_CHOOSER_DIALOG 文件选择对话框风格
* 7 QUESTION_DIALOG 问题对话框风格
* 8 WARNING_DIALOG 警告对话框风格
* @param title 提示框标题
* @param message 提示框内容(支持html标签)
*/
public TranslucentFrame(int width,int height,int stayTime,int style,String title,String message){
this.width=width;
this.height=height;
this.stayTime=stayTime;
this.style=style;
this.title=title;
this.message=message;
}
/**
* 渐隐渐显的提示框
*
* @param style 提示框样式同上
* @param title 提示框标题
* @param message 提示框内容
*/
public TranslucentFrame(int style,String title,String message){
this.width=250;
this.height=180;
this.stayTime=5;
this.style=style;
this.title=title;
this.message=message;
}
public static void main(String[] args) {
String title="友情提示!";
String message="<strong>JDK1.6新特性测试</strong><br>《透明窗体》<br>http://www.blackswansoft.com<br>作者:宋海康";
// Runnable translucent=new TranslucentFrame(250,180,10,4,title,message);
Runnable translucent=new TranslucentFrame(2,title,message);
Thread thread=new Thread(translucent);
thread.start();
}
public void print(){
frame=new JFrame();
editorPane1=new JEditorPane();
editorPane1.setEditable(false);//不可编辑
editorPane1.setContentType("text/html");//将编辑框设置为支持html的编辑格式
editorPane1.setText(message);
frame.add(editorPane1);
frame.setTitle(title);
//设置窗体的位置及大小
int x=Toolkit.getDefaultToolkit().getScreenSize().width-Toolkit.getDefaultToolkit().getScreenInsets(frame.getGraphicsConfiguration()).right-width-5;
int y=Toolkit.getDefaultToolkit().getScreenSize().height-Toolkit.getDefaultToolkit().getScreenInsets(frame.getGraphicsConfiguration()).bottom-height-5;
frame.setBounds(x, y, width, height);
frame.setUndecorated(true); // 去掉窗口的装饰
frame.getRootPane().setWindowDecorationStyle(style ); //窗体样式
// frame.getRootPane().setWindowDecorationStyle(JRootPane.PLAIN_DIALOG ); //窗体样式
AWTUtilities.setWindowOpacity(frame, 0.01f);//初始化透明度
frame.setVisible(true);
frame.setAlwaysOnTop(true);//窗体置顶
//添加关闭窗口的监听
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
hide();
}
});
}
/**
* 窗体逐渐变清晰
*
*/
public void show(){
for (int i = 0; i < 50; i++) {
try {
Thread.sleep(50);
} catch (Exception e) {}
AWTUtilities.setWindowOpacity(frame, i*0.02f);
}
}
/**
* 窗体逐渐变淡直至消失
*
*/
public void hide(){
float opacity=100;
while(true){
if(opacity<2){
System.out.println();
break;
}
opacity=opacity-2;
AWTUtilities.setWindowOpacity(frame, opacity/100);
try {
Thread.sleep(20);
} catch (Exception e1) {}
}
// frame.hide();
System.exit(0);
}
public void run(){
print();
show();
try {
Thread.sleep(stayTime*1000);
} catch (Exception e) {}
hide();
}
}
推荐软件
用java开发的一款功能强大的开源的远程控制软件,最近又升级了,添加了许多使用的功能,而且代码也有了很大程度的优化。可以实现
生成服务器、修改上线主机名称、屏幕监视,屏幕控制、主动连接、上传文件、下载文件、 远程命令、远程任务管理器、发送警告、相互聊天、换皮肤、版本升级提醒等功能,通过该软件可以实现用一台电脑同时控制多台电脑,也可以多台电脑控制同一台电脑等。
软件官方网站下载地址:http://dl.iteye.com/topics/download/c1b7acd2-c7ad-3753-8929-48424025d711
软件如下图所示:
- 大小: 9.5 KB
- 大小: 11.8 KB
分享到:
相关推荐
这是一个类似于qq消息弹窗的代码,java语言,弹窗在指定时间内会自动消失
屏幕右下角出现渐隐渐显的提示框 使用到了JDK1.6中新特性的透明窗体,所以必须要使用JDK1.6或以上版本的 功能如下: 1.窗体出现时逐渐清晰 2.停留一会儿时间之后会自动逐渐模糊直至消失 3.点击关闭按钮后逐渐...
Java实现桌面右下角弹窗,实现JavaSwing窗体闪烁
java组件,可直接用 本人不善美工,可自己加图片美化 方便调整提示款上升和下降以及中间停顿的时间 自由调整大小和背景
自己使用Java开发的进阶版迷宫,上下左右方向键控制主角移动,只显示主角周围一个圆区域,出口在最右下角;可以取消掉GameClient类里的注释显示辅助地图。
主要为大家详细介绍了java实现桌面右下角弹窗效果,模仿类似于qq消息弹窗,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
通过java实现鼠标移动以及点击屏幕的代码,通过简单的java代码简单实现这两个功能。通过java实现鼠标移动以及点击屏幕的代码,通过简单的java代码简单实现这两个功能。
java实现屏幕截图 ,可以作为二次开发的基类,例如屏幕录像啊,远程控制啊
使用JAVA写的简单屏幕共享程序,服务器端截取屏幕图片多线程发送给局域网内的客户端,客户端接受并显示
实现就像QQ缩小在开始菜单栏右下角那种功能
使用Java语言实现本机屏幕监控,可以实时的对本机进行监控,类似直播视频软件。有完整的案例和源码,可以直接运行,注释十分清楚。
用java写了个录视频的小程序, 录制后文件默认保存在系统临时目录, 录制视频和麦克风声音, 播放时回车键进入全屏, esc退出全屏, 希望能对有兴趣的朋友提供参考 已重写新版原生java生成FLV格式视频文件 请看...
java 编程实现鼠标单击获取屏幕上的任一点位置的颜色 java 编程实现鼠标单击获取屏幕上的任一点位置的颜色 java 编程实现鼠标单击获取屏幕上的任一点位置的颜色 java 编程实现鼠标单击获取屏幕上的任一点位置的颜色 ...
真正的源码 jquery实现右下角(左下角,频幕中间)的提示窗口弹出效果
本文详解了如何使用Java语言实现屏幕取色的功能。文档中讲述了如何实现屏幕取色的实现原理,还附带有源代码。可以下载来研究一下。
说明:程序由Java语言实现,功能包括全屏截图、自定义截图,在自定义状态下:在选区中 右键 -> 取消选区 在选区中 双击 -> 保存选区 在选区外 右键 -> 清除图像 程序中窗口截图部分暂时没有实现。 本程序是学习之...
java实现托盘小示例,类似于QQ右下方图标效果
Java实现QQ屏幕截图功能.zip Java实现QQ屏幕截图功能.zip Java实现QQ屏幕截图功能.zip
java 屏幕保护程序JSS 括初始化图形环境,初始化SpriteGroup和安排层次结构,处理AWT事件等等及其余杂项;
java实现图片上传到数据库并显示,利用Struts2和commons-fileupload-1.2.1.jar,代码调试通过 完美运行。