Bem , nada como uma boa noite (dia :D ) de sono ...
Voltei lih as dicas de vocês , dei uma pensada e saiu.
Vo posta aqui onde suponho que estavam os erros e postar
como ficou pra vcs darem um opinião se ficou legal e tal.
Precisei fazer 2 coisas , declarar o Jlabel como static e
repassar o objeto instaciado como parametro na classe
que precisaria modificalo.
maior_abandonado:
pra mim atualiza as minhas JProgressBar eu declaro elas como public static,
Kra eu tinha até pensado que isso poderia estar influenciando , mas depois desse toque resolvi
tentar e deu certo.
maior_abandonado:
eu até intendo se vc não querer abrir seu codigo, mais não da pra da uma resposta precisa sem isso,
Nem é essa a questão é porque também tá um pouco grande e tem muita coisa irrelevante , vou postar um código genérico que vai dar na mesma .
marciofermino:
Amigo jaz o seguinte pra tu testar coloca um botao e coloca la
jLabel1.setText("@@@@@@@@@@@");
Isso era o que estava me deixando intrigado , pois com o botão funcionava
paulovloghan:
tenta criar um método
private JLabel label1 = new JLabel("Teste");
[b][color=red]private[/color] [/b]JLabel getLabel(){
return label1; // retorna o label
}
ae no seu objeto instanciado dessa classe chama ele
obejto.getLabel().setText("ALTERADO");
ow posta o código para gente ver
Bem o problema em si não era obter o valor do JLbel , não entendi
bem oque voce quis dizer , usando os métodos privados , pois no caso
eu precisaria acessalos de outra classe . mas mesmo assim valeu.
Então , suponho que o problema acontecia neste trecho.
[...]
layout window = new layout();
tools metodos = new tools();
Thread t1 = new Thread(window);
[...]
Eu suponho que seja pelo fato do layout ser iniciado numa thread separada da qual está a instancia pois o
JLabel que eu que modificava era o da Thread principal e oque está visivel na tela era o da Thread t1.
Acho que foi isso ...
Bem Bem , está funcionando agora . Mas queria que dessem uma olhada , pra ver se tem algum forma melhor
ou ajustes que deixariam a aplicação mais veloz .
mainGUI.java
public class mainGUI
{
public mainGUI(){}
public static void main(String[] args)
{
boolean a,b,c;
a=false;
b=true;
c=false;
start window = new start();
teste metodos = new teste(window);
window.load();
if(a)
{
metodos.contar_ate_10();
window.jLabel2.setText(metodos.status);
}
else
{
window.jLabel2.setText("Não foi possível Contar até 10");
}
try{Thread.sleep(2000);}catch(Exception ex){;}
if(b)
{
metodos.contar_ate_5();
window.jLabel2.setText(metodos.status);
}
else
{
window.jLabel2.setText("Não foi possível Contar até 5");
}
try{Thread.sleep(2000);}catch(Exception ex){;}
if(c)
{
metodos.contar_ate_3();
window.jLabel2.setText(metodos.status);
}
else
{
window.jLabel2.setText("Não foi possível Contar até 3");
}
System.out.println("terminou");
}
}
teste.java
public class teste
{
start window;
public teste(start window){this.window=window;}
public static String status = "Loading...";
public void contar_ate_10()
{
for(int i = 0;i<=10;i++)
{
status = String.valueOf(i);
window.jLabel2.setText(status);
try{Thread.sleep(1000);}catch(Exception ex){}
status = "contou até 10";
}
}
public void contar_ate_5()
{
for(int i = 0;i<=5;i++)
{
status = String.valueOf(i);
window.jLabel2.setText(status);
try{Thread.sleep(1000);}catch(Exception ex){}
status = "Contou até 5";
}
}
public void contar_ate_3()
{
for(int i = 0;i<=3;i++)
{
status = String.valueOf(i);
window.jLabel2.setText(status);
try{Thread.sleep(1000);}catch(Exception ex){}
status = "Contou até 3";
}
}
}
Obrigado pelo apoio pessoal !