bom dia galera…
seguinte…eu tfiz um programa no GEL q usa Splash ( inclusive eu peguei o tutorial aqui ), mas quando eu fui fazer no NetBeans, nao funciona…alguem sabe me dizer o pq disso ? e como q faço para arrumar esse problema ?
bom dia galera…
seguinte…eu tfiz um programa no GEL q usa Splash ( inclusive eu peguei o tutorial aqui ), mas quando eu fui fazer no NetBeans, nao funciona…alguem sabe me dizer o pq disso ? e como q faço para arrumar esse problema ?
Bom dia,
Meu caro vinihds,
Eu fiz uma Splash aqui com o NetBeans que funciona perfeitamente.
O código é o seguinte:/**
* ------------------------------------------------
* Início da tela de Splash Screen
* ------------------------------------------------
*/
public static class Splash extends Window {
// Imagem que ira aparecer no Splash
private final String imgName = "SplashScreen.jpg";
Image splashImage;
Toolkit toolkit;
private static Splash splash;
// Singleton pra garantir apenas uma unica instancia na memoria
static {
splash = new Splash();
}
private Splash(){
super(new Frame());
setVisible(false);
splashImage = null;
toolkit = Toolkit.getDefaultToolkit();
}
public static Splash getInstance(){
return splash;
}
/**
* Method initSplash.
*/
private void initSplash(){
// Carrega a imagem na memoria
MediaTracker media = new MediaTracker(this);
splashImage = toolkit.getImage(imgName);
if (splashImage != null) {
media.addImage(splashImage, 0);
try {
media.waitForID(0);
}catch (InterruptedException ie) {
}
}
// Configura o tamanho do splash e a posicao na tela
setSize(splashImage.getWidth(this), splashImage.getHeight(this));
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension size = getSize();
if (size.width > screenSize.width)
size.width = screenSize.width;
if (size.height > screenSize.height)
size.height = screenSize.height;
setLocation((screenSize.width - size.width) / 2, (screenSize.height - size.height) / 2);
setVisible(true);
}
public void openSplash(){
setCursor(new Cursor(Cursor.WAIT_CURSOR));
initSplash();
}
public void finish(){
setVisible(false);
dispose();
}
public void paint(Graphics g) {
// Apenas desenha a imagem
g.drawImage(splashImage, 0, 0, getBackground(), this);
}
}
private static class Botoes extends JFrame{
JButton botao;
JFrame frame;
JPanel panel;
/**
* Construtor da aplicacao principal.
* Simula um load demorado com um loop, para mostrar que
* a tela Splash realmente aparece enquanto a aplicacao
* principal eh carregada.
* */
public Botoes(){
for (int i = 0; i < 9000; i++)
System.out.println("");
frame = new JFrame("Botoes");
panel = new JPanel();
panel.setLayout(new GridLayout(4, 1));
botao = new JButton("Aplicacao inicializada");
botao.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(0);
}
});
panel.add(botao);
frame.getContentPane().add(panel, BorderLayout.CENTER);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void initApplication(){
frame.pack();
Splash.getInstance().finish();
}
}
/**
* ---------------------------------------------------
* Término da tela de Splash Screen
* ---------------------------------------------------
*/
Splash.getInstance().openSplash();
Botoes b = new Botoes();
b.initApplication();
Espero ter ajudado
T+
entao…eu fiz praticamente a mesma coisa q vc fez, mas nao funciona.
sendo eu to usando o proprio habiente grafico do netbeans…será q pode ser isso q esta atrapalhando ???
Post o se código aqui para que passamos analiza-lo
vlw!?
eu substitui pelo seu…e tb nao funcionou
ha … cansei de ficar tentando…
vou fazer o splash na unha usando um form normal…
valeu
Cara a persistencia tem que prevalecer,
Post a parte do código para que possamos ajuda-lo
Vlw 
Abraços