PopUp

6 respostas
C

Olá.
Criei um PopUp que não está rodando.
Alguém saberia me dizer por que.
Está dando problema no método main.
Eis o meu código:

package TabelasB;

import javax.swing.WindowConstants;

import java.awt.*;

import java.awt.event.ActionEvent;

/**

  • This code was generated using CloudGarden’s Jigloo
  • SWT/Swing GUI Builder, which is free for non-commercial
  • use. If Jigloo is being used commercially (ie, by a corporation,
  • company or business for any purpose whatever) then you
  • should purchase a license for each developer using Jigloo.
  • Please visit www.cloudgarden.com for details.
  • Use of Jigloo implies acceptance of these licensing terms.

  • A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED
  • for this machine, so Jigloo or this code cannot be used legally
  • for any corporate or commercial purpose.

*/
public class PopUp extends javax.swing.JFrame {

/**
* Auto-generated main method to display this JFrame
 * @param PopUp
*/
public static void main(String[] args, Component PopUp) {
	PopUp inst = new PopUp("Opções de Consulta");
	Button b=new Button("Clique");
	PopupMenu p= new PopupMenu("PopUp");
	MenuItem s= new MenuItem("Save");
	MenuItem ld= new MenuItem("Load");
	b.addActionListener(null);
	inst.add(inst,BorderLayout.CENTER);
	p.add(s);
	p.add(ld);
	inst.add(p);
	
	inst.setVisible(true);
}
	
	private void actionPerformed(ActionEvent evt, PopupMenu p, Component b){
		
		p.show(b,10,10);
	}


public PopUp() {
	super();
	initGUI();
}

/**
 * @param string
 */
public PopUp(String string) {
	
	// TODO Auto-generated constructor stub
}

private void initGUI() {
	try {
		setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
		pack();
		setSize(400, 300);
	} catch (Exception e) {
		e.printStackTrace();
	}
}

}

6 Respostas

B

Olá Chale! Seja bem vindo(a) ao Portal Java!

Poste o erro que ficará mais fácil identificar o problema!

[]`s

B

java.lang.NoSuchMethodError: main
Exception in thread “main”

Este erro é referente à ausencia de um método main na sua classe executável.

O problema está aqui:

public static void main(String[] args, Component PopUp) {

Toda classe executável deve ter um método main no seguinte formato:

public static void main(String[] args) {
C

Valeu a força Roberto.
Vou mudar lá.
Abraço.
Charles

C

Olá Roberto.
Tirei o argumento do método main e agora estão dando os seguintes erros:

Exception in thread main java.lang.IllegalArgumentException: adding containers parent to itself

at java.awt.Container.addImpl(Container.java:1005)

at java.awt.Container.add(Container.java:928)

at javax.swing.JFrame.addImpl(JFrame.java:479)

at java.awt.Container.add(Container.java:899)

at TabelasB.PopUp.main(PopUp.java:36)
D

olá Chale, tudo bem?

percebi o seguinte erro:

na linha que diz

inst.add(inst,BorderLayout.CENTER);

você está tentando adicionar o objeto inst dentro dele mesmo. Além de que o correto seria você adicionar o objeto no frame utilizando o container do JFrame:

inst.getContentPane().add(componente, BorderLayout.CENTER);

C

Olá Dok.
Obrigado por responder.
Vou tentar fazer desta maneira.

Criado 23 de maio de 2005
Ultima resposta 23 de mai. de 2005
Respostas 6
Participantes 3