A movimentação do JLabel não aparece no JFrame

Olá
eu criei uma classe em jframe em que, quando eu inicializo ela no metodo main ela funciona normalmente, mas quando eu coloco para ele inicializar a partir de uma outra classe (a partir de um click de um botão), os metodos de movimentação não funcionam, por favor ajudem. Grata.

Classe que so funciona inicialiazando no main

package Simulador;

import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.Font;
import java.util.ArrayList;
import java.util.Random;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.border.LineBorder;

import java.awt.ComponentOrientation;
import java.awt.Color;

import javax.swing.SwingConstants;

public class Teste extends JFrame {
private JPanel contentPane;
private JLabel lblEstadoDePronto = new JLabel(“Estado de Pronto”);
private JLabel lblTermino, lblTesteJLabel, teste;

ArrayList<String> nomes = new ArrayList<String>();
JLabel[] componentes;

public Teste() {
	super("Simulador");
	
	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	setBounds(450, 0, 900, 600);
	contentPane = new JPanel();
	contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
	contentPane.setLayout(null);
	setContentPane(contentPane);
	contentPane.setVisible(true);
	
	lblEstadoDePronto.setBounds(0, 0, 120, 30);
	lblEstadoDePronto.setFont(new Font("Tahoma", Font.PLAIN, 15));
	contentPane.add(lblEstadoDePronto);
	
	JLabel lblEstadoDeExecuo = new JLabel("Estado de Execu\u00E7\u00E3o");
	lblEstadoDeExecuo.setBounds(296, 0, 145, 30);
	lblEstadoDeExecuo.setFont(new Font("Tahoma", Font.PLAIN, 15));
	contentPane.add(lblEstadoDeExecuo);
	
	lblTermino = new JLabel("Termino");
	lblTermino.setBounds(605, 0, 100, 30);
	lblTermino.setFont(new Font("Tahoma", Font.PLAIN, 15));
	contentPane.add(lblTermino);
	
	teste = new JLabel("Nome");
	teste.setBorder(new LineBorder(Color.ORANGE, 3));
	teste.setHorizontalAlignment(SwingConstants.CENTER);
	teste.setForeground(Color.ORANGE);
	teste.setBounds(306, 50, 100, 80);
	teste.setVisible(false);
	contentPane.add(teste);
	

	setVisible(true);	
}

public Teste(ArrayList<Processo> lista){	
	
	nomes(lista);
	
	começo();
	
}

public void definir_tempo(ArrayList<Processo> lista){
	setVisible(true);
	Random tempo = new Random();
	for(Processo p: lista){
		int ex = tempo.nextInt(50);
		p.setExecução(ex);
		for(Processo k: lista){
			if(lista.indexOf(p)< lista.indexOf(k)){
				k.setPronto(k.getPronto()+ex);
			}
		}
	}
}

public void nomes(ArrayList<Processo> lista){
	System.out.println("listando");
	for(Processo p: lista){
		nomes.add(p.getNome());
	}
}

public void começo(){
	boolean ativa = true;
	System.out.println("começou");
	while(ativa){
		if(nomes.size() > 0){

			componentes = new JLabel[nomes.size()];
			listar();
			mostrar();
			
			teste.setText(nomes.get(0));
			teste.setVisible(true);
			
			try {
				Thread.sleep(3000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
			nomes.remove(0);
			teste.setVisible(false);
			deslistar();
			
		}
		else{
			ativa = false;
		}
	}
}

public void listar(){
	int y = 50;
	int i =1;
	for(int k =1; k< nomes.size(); k++){
		JLabel processo = new JLabel();
		processo.setText(nomes.get(k));
		processo.setBounds(0, y, 100, 80);
		processo.setBorder(new LineBorder(Color.RED, 3));
		processo.setHorizontalAlignment(SwingConstants.CENTER);
		processo.setForeground(Color.RED);
		processo.setVisible(false);
		y+=100;
		
		System.out.println(processo);
		
		contentPane.add(processo);
		componentes[i] = processo;
		i++;
				
	}
	System.out.println("\n");
	
}

public void mostrar(){
	for(int y=1; y<componentes.length; y++){
		componentes[y].setVisible(true);
	}
}
public void deslistar(){
	for(int k=1; k<componentes.length; k++ ){
		componentes[k].setVisible(false);
		System.out.println(componentes[k].getBounds());
	}
	System.out.println("\n");
}

public void fim(ArrayList<Processo> lista){
	int y = 50;
	for(Processo p: lista){
		JLabel nome = new JLabel("Nome: "+p.getNome());
		nome.setBounds(700, y, 200, 20);
		contentPane.add(nome);

		JLabel prioridade = new JLabel("Prioridade: " + p.getPrioridade());
		prioridade.setBounds(700, y+15, 200, 20);
		contentPane.add(prioridade);
		

		JLabel Texecução = new JLabel("Tempo em execução: " + p.getExecução());
		Texecução.setBounds(700, y+30, 200, 20);
		contentPane.add(Texecução);
		

		JLabel Tpronto = new JLabel("Tempo em pronto: " + p.getPronto());
		Tpronto.setBounds(700, y+45, 200, 20);
		contentPane.add(Tpronto);
		
		int total = p.getExecução() + p.getPronto();
		JLabel Ttotal = new JLabel("Tempo total: " + total);
		Ttotal.setBounds(700, y+60, 200, 20);
		contentPane.add(Ttotal);
		
		y+=110;
	}
	
}

}

classe que eu gostaria de implementar
public Cadastrar() {
super(“Cadastro”);
}

public void criar_janela(){
	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	setSize(350, 200);
	
	layout = new GridLayout(3, 2);
	container = getContentPane();
	t_nome = new JLabel("Nome: ");
	t_prio = new JLabel("Prioridade: ");
	nome = new JTextField(30);
	prioridade = new JTextField(30);
	botao = new JButton("Cadastrar");
	processos = new ArrayList<Processo>();
	fim = new JButton("Executar");
	fim.setBounds(200, 100, 100, 70);
	
	setLayout(layout);
	add(t_nome);
	add(nome);
	add(t_prio);
	add(prioridade);
	add(botao);
	
	String n1 = JOptionPane.showInputDialog("Quantos processos serão inserirdos??");
	final int numero = Integer.parseInt(n1);
	
	botao.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent arg0) {
			setVisible(false);
			String name = nome.getText();
			int prio = ValidarNumero(prioridade);
			Processo novo = new Processo(name, prio, 0, 0);
			processos.add(novo);
			i++;
			nome.setText("");
			prioridade.setText("");
			setVisible(true);
			if(i == numero){
				botao.setVisible(false);
				add(fim);
				setLayout(null);
				t_nome.setText("Fim do Cadastro!! Agora vamos executar ");
				prioridade.setVisible(false);
				t_prio.setVisible(false);
				nome.setVisible(false);
				t_nome.setBounds(0, 0, 350, 80);
				
				
				fim.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent arg0) {
						setVisible(false);
						Collections.sort(processos, new Priorizar());
						
					}});
				}
			}
		});
}