java高手请进!java窗口淡入淡出问题

第一,你需要JDK1.6.16以上的版本 改进了一下你的代码,测试可运行,如下:import java.awt.Frame;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.util.Timer;import java.util.TimerTask;import com.sun.awt.AWTUtilities;public class MainFrame extends Frame {...
java高手请进!java窗口淡入淡出问题
第一,你需要JDK1.6.16以上的版本
改进了一下你的代码,测试可运行,如下:
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Timer;
import java.util.TimerTask;

import com.sun.awt.AWTUtilities;

public class MainFrame extends Frame {
public static void main(String[] args) {
new MainFrame();
}

private float alpha = 0;
private MainFrame frame;

public MainFrame() {
frame = this;

setSize(300, 200);
setLocationRelativeTo(null);
setVisible(true);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent w) {
System.exit(0);
}
});

//在1秒后执行此任务,每次间隔0.5秒
new Timer().schedule(new MyTask(), 1000, 500);

}

private class MyTask extends TimerTask{
@Override
public void run() {
if(alpha>=1.0){
alpha = 0;
}
AWTUtilities.setWindowOpacity(frame, alpha);
alpha = alpha+0.1f;
}
}
}2014-01-27
public class JFrameColor extends Frame{
public static void main(String[] args) {
new JFrameColor();
}
private Timer tmr;
public JFrameColor(){
this.setTitle("JFrameColor");
this.setSize(300, 200);
AWTUtilities.setWindowOpacity(this, 0f);
this.setVisible(true);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent w){
JFrameColor.this.dispose();
}
});//没有它,关不掉
tmr=new Timer();
tmr.schedule(new TimerTask(){
float alpha=0;
public void run(){
if(alpha<0.9){
AWTUtilities.setWindowOpacity(JFrameColor.this, alpha+=0.1);
}else{
AWTUtilities.setWindowOpacity(JFrameColor.this,1);
tmr.cancel();
}
}
}, 200, 300) ;
}
}2014-01-27
让我想起了在学校的我2014-01-27
mengvlog 阅读 49 次 更新于 2025-10-30 05:38:36 我来答关注问题0
檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部