A classe já tem o main só que quero abrir ela a partir de um menu que está em outra classe

4 respostas
F

Olá,

Estou com um problema que é o seguinte:
A classe já tem o main só que quero abrir ela a partir de um menu que está em outra classe:

A classe que eu quero abrir é essa:

package fr.larez.rampin.starcoordinates.launchers;

import processing.core.PApplet;
import fr.larez.rampin.starcoordinates.StarCoordinates;

public class Processing {

    public static void main(String[] args)
    {
        final boolean present_mode = false;
        final String classname = StarCoordinates.class.getCanonicalName();
        if(present_mode)
            PApplet.main(new String[] {"--present", classname});
        else
            PApplet.main(new String[] {classname});
    }

}

Onde eu quero chamar ela é aqui (em outra classe):

btGeraCoordenada = new JButton();
	    btGeraCoordenada.setText("Gera Coordenadas Estelares");
	    btGeraCoordenada.addActionListener(
	    		new ActionListener(){
					public void actionPerformed(ActionEvent e)
					{
						new Processing();
                                                // SEI QUE PRECISA DE MAIS ALGUMA COISA!
					}
				}
	    );
	    controle.add(btGeraCoordenada);

Aguardo a ajuda dos amigos.

De já agradeço

4 Respostas

mauricioadl

joga o codigo do main dentro do construtor da classe e da um new nela.

o metodo main tem unica e exclusiva finalidade de iniciar a aplicação.

[]'s

M
package fr.larez.rampin.starcoordinates.launchers;  
      
    import processing.core.PApplet;  
    import fr.larez.rampin.starcoordinates.StarCoordinates;  
      
    public class Processing {  
      
        public static void main(String[] args)  
        {  
            final boolean present_mode = false;  
            final String classname = StarCoordinates.class.getCanonicalName();  
            if(present_mode)  
                PApplet.main(new String[] {"--present", classname});  
            else  
                PApplet.main(new String[] {classname});  
        }  
      
    }
btGeraCoordenada = new JButton();  
    btGeraCoordenada.setText("Gera Coordenadas Estelares");  
    btGeraCoordenada.addActionListener(  
            new ActionListener(){  
    public void actionPerformed(ActionEvent e)  
    {  
       String []args = new String[1];
       Processing  pr = new Processing();
       pr.main(args);
                                               // SEI QUE PRECISA DE MAIS ALGUMA COISA!  
    }  

    );  
    controle.add(btGeraCoordenada);

Se você quiser usar o args para passar algum argumento, vc seta valor ao seu array.
Não sei se isso é correto, mais funciona.

F

RESOLVIDO:

  • Tirei o “static” da classe processing.
  • Adicionei:
String []args = new String[1];  
Processing  processing = new Processing();  
processing.main(args);

Na classe do menu.

Valeu pelas orientações pessoal.

mauricioadl

fgerson:
RESOLVIDO:

  • Tirei o “static” da classe processing.
  • Adicionei:
String []args = new String[1];  
Processing  processing = new Processing();  
processing.main(args);

Na classe do menu.

Valeu pelas orientações pessoal.

GoHorse detected!

hehehehe

Criado 26 de março de 2012
Ultima resposta 27 de mar. de 2012
Respostas 4
Participantes 3