Pessoal, eu ach oque consegui, mas aconteceu um pequeno problema que ja tive antes. Bom, a classe principal ficou assim:
package br;
import java.awt.event.*;
public class Principal extends InterfaceGrafica implements ActionListener {
public static void main (String args[]) {
Principal inicio = new Principal();
}
public Principal(){
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent evt) {
System.exit(0);
}
});
setTamanho(1000,300);
montarJanela();
setLarguraColunas(200,280,200,200,200,700);
getJMenuItemIniciar().addActionListener(this);
}
public void actionPerformed(ActionEvent event) {
// pegando a fonte do evento
Object source = event.getSource();
if(source == getJMenuItemSair()) {
System.exit(0);
} else if(source == getJMenuItemParar()) {
// defina aqui o quê acontece
} else if(source == getJMenuItemIniciar()) {
// defina aqui o quê acontece
processar();
}
}
public void processar(){
Cronometro crono = new Cronometro();
while(crono.getStatus(5)){
setStatusBar2("Aguardando " + crono.getTempo());
}
}
}
Funcionou direitinho, ele pega o evento da classe grafica e executa o metodo processasr, porem, se vcs perceberem, no metodo processar eu mando ele mostrar o tempo do cronometro num label da classe grafica. Bem, funciona, mas só aparece o texto no label após terminar o processo. É mais ou menos assim, quando clico no menu Iniciar, é como se o programa travasse, ele fica parado por 5 segundos (tempo que eu defini na chamada da classe cronometro), e depois desse tempo ele mostra o valor final (00:00:00). É como se só reportasse o valor quando termina a rotina actionPerformed, de onde chamo o metodo processar. Ja tive problemas com isso outras vezes... e ainda naum consegui solucionar. Me aconselharam a usar uma Thread, mas não no meu outro caso não pude usar, pois tive problemas de multi-ponteiros, acabava tendo uma sobreposição de processos... e ai galera, alguem tem mais alguma super dica ?!?!?
Abraços, e obrigado pela ajuda de todos!