java中怎么做闪屏窗口。

 我来答
jiang_bin2
推荐于2016-05-22
知道答主
回答量:25
采纳率:0%
帮助的人:15万
展开全部
我得代码如下

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

public class SplashFrame extends JFrame{
public SplashFrame() {

Image imgSplash = Toolkit.getDefaultToolkit().getImage( "splash.png ");

ImagePane pnlImage = new ImagePane(imgSplash);
JWindow splashWindow = new JWindow(this);
Container pane = JWindow.getContentPane();
pane.add(pnlImage, BorderLayout.CENTER);
Dimension scmSize = Toolkit.getDefaultToolkit().getScreenSize();
int nImageWidth = imgSplash.getWidth(this);
int nImageHeight = imgSplash.getHeight(this);
splashWindow.setSize(nImageWidth, nImageHeight);
splashWindow.setLocation(scmSize.width / 2 - nImageWidth / 2,
scmSize.height / 2 - nImageHeight / 2);
splashWindow.show();
splashWindow.toFront();

try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
this.dispose();

}

//public static void main(String[] args) {
// SplashFrame frm = new SplashFrame();
//}

}

class ImagePane extends JPanel {
private Image imgSplash;

public ImagePane(Image image) {
MediaTracker mt = new MediaTracker(this);
mt.addImage(image, 0);
try {
mt.waitForID(0);
} catch (Exception e) {
e.printStackTrace();

}
this.imgSplash = image;
}

public void paint(Graphics g) {
g.drawImage(imgSplash, 0, 0, this);
}

public Dimension getPreferredSize() {
return new Dimension(imgSplash.getWidth(this), imgSplash
.getHeight(this));
}
}

当把这个当作一个独立的程序来运行,闪屏显示正常
但是但我在另外LoginFrame.java里面new一个SplashFrame来显示就不能正常显示,只是显示一个灰白的Window窗体
追问
我试了一下怎么没反应啊。没有窗口出来。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户27334
2011-10-30 · 超过12用户采纳过TA的回答
知道答主
回答量:176
采纳率:0%
帮助的人:68万
展开全部
java界面那块分2为2JFrame,Jdialogue,jwindow 好看看布局了x,还有你自己j的风4格了e 闪屏就是JWindow! m⑥ゃミc钵ㄨ瘠m⑥ゃミm⑥ゃミuf┒苔kc钵ㄨ瘠nz
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式