O eclipse esta dando uma opniao de criar o metodo getContentPane

8 respostas
tr3t4

pessoal to apanhando de vara verde aqui pra criar um botao hauihauihauhu

bom vai lá a duvida: Estou tentando criar 2 botoes so que o eclipse ta dando uma erro e no autoAjuda dele fala pra criar os metodos que ja existe...segue algumas partes do meu codigo locao:
//importando pacotes do nucleo de Java
import java.awt.*;
import java.awt.event.*;

//importando pacotes de extenção Java
import javax.swing.*;
import javax.swing.JDialog;

public class BotaoTeste
{
	private JButton botao1, botao2;
	
	//configura a GUI
	public BotaoTeste()
	{
		//Titulo do projeto
		super("Teste do Botao");
		
		//Crial um painel de conteudo e um gerenciador de leiaut
		Container container = getContentPane();
		container.setLayout(new FlowLayout());
... bom o eclipse fala que tenho que criar os metodos SUPER e GETCONTENTPANE() ... mas minha duvida é a seguinte: Se lá em cima eu o importei o import javax.swing.JDialog; o getContentPane já dentro dele, dae eu nao intendo pq pede pra eu criar se eu ja estou importando ele????

8 Respostas

Mantu

Olá tr3t4!
Teria como vc copiar toda a mensagem do eclipse (ou dar um printscreen e mandar a figura) e colocar para darmos uma olhada?

A

Seu problema não é de java, mas de OO.

Você está chamando um método getContentPane, que não existe na sua classe.

  • Se você quer chamar o método getContentPane() de um JDialog, tem que instanciar um e referenciar, como no exemplo:
JDialog dialog = new JDialog(...);
Container container = dialog.getContentPane();
container.setLayout(new FlowLayout());

Agora, se você quer que a sua classe BotaoTeste SEJA um JDialog, tem que indicar isso com o extends na declaração da classe:

public class BotaoTeste extends JDialog

Abraço,

Armando

tr3t4

Mantu ve ta aparecendo a imagem


tr3t4

armando se eu ja o importei lá no inicio importando a classe JDailog que contem o metodo requisitado, era pra dar certo…correto?

Mantu

Cara, só um palpite… é que isso tá me cheirando a porqueira que o eclipse as vezes faz… Vá no menu project>>clean… e lá marque o seu projeto (deixe a opção de “limpar os projetos selecionados” checada) e dê um ok para limpar os projetos. Depois dê um build all (menu project>>build all)
Se isso naum resolver, depois nos vemos o que fazer, ok?

A

Errado. Por isso que eu te falei que era um problema de OO. Na programação orientada a objetos, você só pode utilizar um método no escopo de uma instância, não é como na estruturada (por exemplo, C) que você faz um include e usa uma função. Você tem que usar da forma que eu falei.

Abraço,

Armando

tr3t4

Mantu tipo eu tentei fazer o que tu me mandou tipo…project>>clean ate ai foi tranquilo, agora qdo eu fui no project>>build all, esta opção nao estava acessivel, dai agora ta gerando um outro erro na hora de salvar, segue a imagem pra tu ve


tr3t4

armando vc estava certo velhinho, tipo é que eu ainda nao entrei na parte de Orientação Objeto, mas a fundo, tipo era realmente o que vc me falou…dae fui digereir e era isso mesmo, “só posso utilizar um método no escopo de uma instância”
tipo agora deu certo com o JDialog agora vou terminar o setSize, e o setVisible…hehehehe

é galera a OO é tao importante qto a propria sintaxe, vou dar mais uma estudada nela

vlews ae pela ajuda

Criado 21 de julho de 2006
Ultima resposta 24 de jul. de 2006
Respostas 8
Participantes 3