Mudar propriedade

pessoal, como faço para mudar a propriedade de um label que se encontra em outro formulario?

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”.

[quote=edsouzza]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”.[/quote]

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…[/quote]

Dá uma olhada aí. O projeto abre no netbeans 6.5, mas só precisa olhar mesmo os fontes na pasta src.

Abraços

marcobiscaro2112, em cima do que voce escreveu eu criei isso dentro da classe TelaPrincipal

public void Mostra_Status(String texto) { this.lbl_status.setText(texto); }

e isso dentro do meu metodo conecta

[code]
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;
    
}  
[/code]

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. :wink:

[quote=edsouzza]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. :wink:[/quote]

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.