Você pode usar um campo protegido estático na tela principal. Ele ficaria acessível às outras classes/telas…
publicclassMainGUI{protectedstaticlongid;...
Ou talvez algo melhor, com mais informações…
publicclassMainGUI{protectedstaticUseruser;...
Ou, se você está utilizando algum banco de dados pode usar ele para armazenar o usuário logado.
T
thiago.salcha
mesmo eu tendo dado um dispose() na primeira tela ?
por exemplo uma tela de login:
ao fazer a validação de login e senha, a tela de login é fechada (this.dispose() … mesmo eu colocando um static nessa tela, o valor dela será válido para as outras ?
juno.rr
Sim.
Primeiro porque campos estáticos não dependem de instância, ou seja, vc não precisa dar um…
newMainGUI();
…para usar um de seus campos.
Segundo porque se você der um dispose() em uma janela, mas continuar referenciando seu objeto, ele continuará ativo e e disponível para uso.
Abraço
juno.rr
Mas creio que essa não seria a melhor abordagem. Já considerou usar algum banco de dados para a aplicação?
Se vc não usa banco de dados, poderia considerar a utilização de um embarcado e orientado a objetos como DB4J ou Prevailer, ambos são muito bons e maduros o suficiente para aplicações realmente grandes, se precisar…
T
thiago.salcha
Então na primeira tela eu coloco:
protectedstaticintglob=12345;
Na tela seguinte, como eu recupero esse valor ?
essa variável só foi criada na tela 1 por exemplo, como eu uso o valor dela na tela 2 ??
juno.rr
Recupera por referência direta mesmo
intid=PrimeiraTela.glob;
pra definir a mesma coisa
PrimeiraTela.glob=12345;
Detalhe é que todas tem que estar no mesmo pacote para poderem acessar a variável dessa forma.