可参照NetBeans.
url: http://www.netbeans.org.
url: http://www.netbeans.org.
解决方案 »
- 在Java Swing中,如何做一个可用鼠标拖动改变内部面板大小的JFrame
- 做过电影服务端来看看!
- <bean:define 标签使用问题,请问如果对应的bean是null,如何返回一个空的bean?
- 年末, 寻找C++代码翻译Java代码,高手出现吧 .!!! 高分送上 ..
- JTextField如何限制输入个数
- sqlserver数据库分页问题,急、、、
- javac编译的时候正确,用java运行,出现如下错误:Exception in thread "main" java.lang.NoClassDefFoundError:f:\zhourui
- 帮忙看看这个程序怎么了?解决立即给分~~~~~~
- 什么时候才垃圾回事?
- 今天犯了个有点二逼的错误.....
- 我的数据集有3万多条记录的时候读取出错,两万多条时就没事,搞不懂为什么?
- 请大家帮帮忙,小弟初学java!!
//显示Logo标志
////////////////////////////////////////////////////////////////////////////////
public void showSplashScreen()
{
splashLabel = new JLabel(new ImageIcon(xxx.xxx.class.getResource("splash.gif")));
splashScreen = new JWindow();
splashScreen.getContentPane().setLayout(new BorderLayout());
splashScreen.getContentPane().add(splashLabel,BorderLayout.CENTER);
splashScreen.pack();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
splashScreen.setLocation(screenSize.width/2 - splashScreen.getSize().width/2,
screenSize.height/2 - splashScreen.getSize().height/2);
splashScreen.show();
}////////////////////////////////////////////////////////////////////////////////
//隐藏Logo标志
////////////////////////////////////////////////////////////////////////////////
public void hideSplashScreen()
{
splashScreen.setVisible(false);
splashScreen = null;
splashLabel = null;
}
初始化的时候
showSplashScreen()
doinit()
hideSplashScreen()
如果要动画效果,就使用线程吧
第一,你的splash可以用一个线程开始!
第二,同时,在splash工作时,你可以完成应用程序的初始化工作!建议看看一些open source的source,象NetBeans,Eclipse,.......
import javax.swing.*;public class SplashWindow extends JWindow
{
private SplashPanel SPLASHPANEL=new SplashPanel();
private int splash_x;
private int splash_y;
private int splash_w;
private int splash_h;
private Container con;
public SplashWindow()
{
con=getContentPane();
con.setLayout(new BorderLayout());
Dimension screensize=Toolkit.getDefaultToolkit().getScreenSize();
Dimension splashsize=SPLASHPANEL.getPreferredSize();
splash_w=splashsize.width;
splash_h=splashsize.height;
splash_x=(int)((screensize.width-splash_w)/2);
splash_y=(int)((screensize.height-splash_h)/2);
con.add(SPLASHPANEL,BorderLayout.CENTER);
setBounds(splash_x,splash_y,splash_w,splash_h);
show();
}
public void hideMe()
{
dispose();
}
/*
public static void main(String[] args)
{
new SplashWindow();
}
*/
}
________________________________________________________
import java.awt.*;
import javax.swing.*;public class SplashPanel extends JPanel
{
private ImageIcon img=null;
public SplashPanel()
{
img=new ImageIcon(getClass().getResource("image\\splash.gif"));
setOpaque(false);
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
img.paintIcon(this,g,0,0);
}
public Dimension getPreferredSize()
{
int splash_w=img.getIconWidth();
int splash_h=img.getIconHeight();
Dimension splash_dimension=new Dimension(splash_w,splash_h);
return splash_dimension;
}
public ImageIcon getImg()
{
return img;
}
public void setImg(ImageIcon pic)
{
img=pic;
}
}