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:
[code]
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);
}[/code]
Ação no botão login:
[code]
//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!");
}[/code]
Porém, ele não abre e da o seguinte erro:
[quote][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][/quote]