pessoal, como faço para mudar a propriedade de um label que se encontra em outro formulario?
Mudar propriedade
14 Respostas
como assim mudar o status do label?!
tem como colocar uma parte do codigo pra dar uma olhada??
valeww!
desculpe… Tenho um label na TelaPrincipal chamado lblconexao que me traz o status da conexao: “Conectado”
tenho uma classe chamada conexao, gostaria que quando a conexao fosse aberta o label mostrasse:“Conectado” e o mesmo para “Desconectado”.
desculpe… Tenho um label na TelaPrincipal chamado lblconexao que me traz o status da conexao: “Conectado”
tenho uma classe chamada conexao, gostaria que quando a conexao fosse aberta o label mostrasse:“Conectado” e o mesmo para “Desconectado”.
Uma forma de fazer é modificando a TelaPrincipal dentro da classe conexão… criando um construtor na classe conexão para receber a TelaPrincipal…
Dentro da TelaPrincipal voce vai ter que criar um metodo publico pra poder setar o lblconexao como esse
public void setLabelConex(String status){
lblconexao.settext(status);
}
Então na classe conexao ao conectar vc seta o label pra “Conectado” e o mesmo pra quando desconectar…
espero ter ajudado…
Outra forma é fazer a classe conexão lançar eventos e fazer a classe Tela um dos possiveis ouvintes… Mais flexivel e conexão nao fica dependente da Tela em si. E a tela nao rpecisa expor um atributo sem necessidade
Ok, no Delphi eu referenciaria o formulario, o componente e mudaria a propriedade diretamente, isso não acontece no Java?
Você poderia fazer assim, na classe do formulário (supondo que seu label chame-se status):
public void setStatusText(String texto) {
this.status.setText(texto);
}
Aí, basta chamar esse método de uma outra classe qualquer:
TelaPrincipal t = new TelaPrincipal();
if (conectado) {
t.setStatusText("Conectado");
} else {
t.setStatusText("Desconectado");
}
Algo assim. Captou a idéia?
Cara, gostei dessa sua ideia! e isso é o tipo d coisa que da outra cara mesmo, bem mais elegante de resolver…vc teria algum exemplo pra ficar + claro pra mim?! valew Josenaldo…
Cara, gostei dessa sua ideia! e isso é o tipo d coisa que da outra cara mesmo, bem mais elegante de resolver…vc teria algum exemplo pra ficar + claro pra mim?! valew Josenaldo…
Dá uma olhada aí. O projeto abre no netbeans 6.5, mas só precisa olhar mesmo os fontes na pasta src.
Abraços
public void Mostra_Status(String texto) {
this.lbl_status.setText(texto);
}
public boolean conecta()
{
boolean result = true;
try
{
Class.forName(driver);
conexao = DriverManager.getConnection(url,usuario,senha);
JOptionPane.showMessageDialog(null,"Banco de Dados conectado!!!");
TelaPrincipal tela = new TelaPrincipal();
tela.Mostra_Status("conectado");
}
catch(ClassNotFoundException Driver)
{
JOptionPane.showMessageDialog(null,"Driver não localizado"+Driver);
result = false;
}
catch(SQLException Fonte)
{
JOptionPane.showMessageDialog(null,"Erro na conexão" +
"com a fonte de dados: "+Fonte);
result = false;
}
return result;
}
mas nada acontece, ou seja quando conecta o JOptionPane funciona mas o label nao informa nada :cry:
Vc apenas criou o formulário, mas não o tornou visivel.
Cuidado com essa solução, pois sua classe Conexão se tornou dependente do formulário.
Assim, se vc quiser reaproveitá-la, terá que mexer no código dela…
Olá, josenaldo alguma dica de como resolver isso?
Aproveitando a oportunidade, achei uma beleza o seu site, muito proveitoso pra que esta começando como eu.
Grato. 
Olá, josenaldo alguma dica de como resolver isso?
Aproveitando a oportunidade, achei uma beleza o seu site, muito proveitoso pra que esta começando como eu.Grato.
Ué, eu deixei um exemplo prontinho… Olha mais acima…
Ok. vou estudar e tentar implementar com suas dicas.
grato.
Olha o exemplo q postei mais acima. Tah implementado direitinho.