Galera...estou com dúvida em como abrir e fechar telas em uma aplicação que eu gerei no NetBeans.
Criei um novo projeto e ele já cria 2 telas (AboutBox e View) + App...
No Windows, ele rodava bonitinho e abria as janelas. Dava um erro, mas abria. Formatei meu notebook e instalei o Ubuntu, importei o projeto e, ao rodar ele pra ver como estava, da o erro e não abre nada!
Métodos para abrir e fechar janelas na classe App:
public static void fechaLogin(GerenciadorDeCampeonatosLogin login){
login.getApplication().hide(login);
}
public void abreLogin(GerenciadorDeCampeonatosLogin login) {
show(new GerenciadorDeCampeonatosLogin(this));
}
public void abreAdm(GerenciadorDeCampeonatosAdm adm) {
show(new GerenciadorDeCampeonatosAdm(this));
}
public static void fechaAdm(GerenciadorDeCampeonatosAdm adm){
adm.getApplication().hide(adm);
}
public void abreCapitao(GerenciadorDeCampeonatosCapitao capitao) {
show(new GerenciadorDeCampeonatosCapitao(this));
}
public static void fechaCapitao(GerenciadorDeCampeonatosCapitao capitao){
capitao.getApplication().hide(capitao);
}
public void abreJogador(GerenciadorDeCampeonatosJogador jog) {
show(new GerenciadorDeCampeonatosCapitao(this));
}
public static void fechaJogador(GerenciadorDeCampeonatosJogador jog){
jog.getApplication().hide(jog);
}
Ação no botão login:
//O teste está bem precário, pois ainda estou fazendo os testes nas telas...
if (txtUsuario.getText().equals("adm")
&& verificaSenha(pswSenha.getPassword()).equals("adm")) {
GerenciadorDeCampeonatosApp camp = new GerenciadorDeCampeonatosApp();
camp.abreAdm(new GerenciadorDeCampeonatosAdm(camp));
GerenciadorDeCampeonatosApp.fechaLogin(this);
}
else if(txtUsuario.getText().equals("capitao")
&& verificaSenha(pswSenha.getPassword()).equals("capitao")) {
GerenciadorDeCampeonatosApp camp = new GerenciadorDeCampeonatosApp();
camp.abreCapitao(new GerenciadorDeCampeonatosCapitao(camp));
GerenciadorDeCampeonatosApp.fechaLogin(this);
}
else if(txtUsuario.getText().equals("jogador")
&& verificaSenha(pswSenha.getPassword()).equals("jogador")) {
GerenciadorDeCampeonatosApp camp = new GerenciadorDeCampeonatosApp();
camp.abreJogador(new GerenciadorDeCampeonatosJogador(camp));
GerenciadorDeCampeonatosApp.fechaLogin(this);
}
else {
JOptionPane.showMessageDialog(null, "Login inválido!");
}
Porém, ele não abre e da o seguinte erro:
[color=red]12/05/2011 20:55:48 org.jdesktop.application.ResourceManager getApplicationResourceMap WARNING: getApplicationResourceMap(): no Application class Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at gerenciadordecampeonatos.GerenciadorDeCampeonatosAdm.<init>(GerenciadorDeCampeonatosAdm.java:35) at gerenciadordecampeonatos.GerenciadorDeCampeonatosLogin.btnLoginMouseClicked(GerenciadorDeCampeonatosLogin.java:260) at gerenciadordecampeonatos.GerenciadorDeCampeonatosLogin.access$800(GerenciadorDeCampeonatosLogin.java:23) at gerenciadordecampeonatos.GerenciadorDeCampeonatosLogin$4.mouseClicked(GerenciadorDeCampeonatosLogin.java:150) at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:270) at java.awt.Component.processMouseEvent(Component.java:6271) at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) at java.awt.Component.processEvent(Component.java:6033) at java.awt.Container.processEvent(Container.java:2045) at java.awt.Component.dispatchEventImpl(Component.java:4629) at java.awt.Container.dispatchEventImpl(Container.java:2103) at java.awt.Component.dispatchEvent(Component.java:4455) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4633) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4306) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4227) at java.awt.Container.dispatchEventImpl(Container.java:2089) at java.awt.Window.dispatchEventImpl(Window.java:2517) at java.awt.Component.dispatchEvent(Component.java:4455) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649) at java.awt.EventQueue.access$000(EventQueue.java:96) at java.awt.EventQueue$1.run(EventQueue.java:608) at java.awt.EventQueue$1.run(EventQueue.java:606) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116) at java.awt.EventQueue$2.run(EventQueue.java:622) at java.awt.EventQueue$2.run(EventQueue.java:620) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) at java.awt.EventQueue.dispatchEvent(EventQueue.java:619) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)[/color]