Tela de Splash com NetBeans?

1 resposta
fernandopaiva

Salve galera.

To com um problema q ainda naum encontrei uma solucao q ajudasse, como sempre antes de vir perguntar aqui ja pesquisei muito. Eh o seguinte, eu uso NetBeans7 e quero criar uma tela de Splash sem usar o -splash do run do netbeans e sem usar o manifest.mf.

Bem, tudo isso se deve pq eu uso um programa pra empacotar meus .jar e esse programa gera um .exe. Usando o -splash: da VM no Netbeans nas propriedades do projeto Run, eu preciso passar onde esta a imagem algo como -splash:src/imagens/tela_splash.png sendo q depois q gero o jar esse caminho deixa de existir.
O manifest.mf quando eu empacoto o jar para exe, nao eh executado.
Entaum andei pesquisando uma maneira de conseguir fazer isso dentro da aplicacao sem ter q ficar naquelas de criar um JWindow algo assim, apenas abrindo a imagem q eh o q parece q a VM faz. Eu vi q a VM executa isso antes msm de iniciar, entaum queria fazer isso na minha app no construtor da minha classe principal.
Fiz uma telas de splash aqui usando JWindow/JFrame etc…Mas naum ficam taum legais como vc fazendo direto no manifest ou no run, eh preciso fazer muitos ajustes usando JWindow e outros.

estou tentando assim mas ainda naum tive resultados.

SplashScreen s = SplashScreen.getSplashScreen();
URL url = getClass().getResource("/imagens/tela_splash.png");
s.setImageURL(url);
s.getImageURL(); //retorna null
Graphics2D g = splash.createGraphics(); 
new Thread(){
    //thread execucao
    sleep(3000);
}

Como fazer isso usando o recurso da VM dentro da App ??? E se naum for possivel, como eu configuro o -splash da VM Option no NetBeans para que busque em
-splash:/imagens/tela_splash.png e naum em -splash:src/imagens/tela_splash.png

obrigado.

1 Resposta

E

Como você deve ter percebido, o splash deveria ser executado pelo loader C++ que carrega suas classes Java (no caso de um programa Java padrão, não empacotado em um .exe, é o java.exe ou javaw.exe), portanto não dá para ser mais rápido que ele (ou seja, o código em Java que você escreveu já vai demorar bastante para ser carregado, mesmo que esteja na primeira linha do seu “main”. )

O loader modificado que você está usando e gera um .exe a partir do .jar não faz todas as coisas que o java.exe ou o javaw.exe ; você precisa achar um outro loader modificado que leia o manifest.mf corretamente.

Criado 1 de dezembro de 2011
Ultima resposta 1 de dez. de 2011
Respostas 1
Participantes 2