Erro ao executar este programa

10 respostas
J

Se alguem puder me ajudar nao consigo fazer rodar este exemplo que consegui em Java, desculpem mais estou começando agora, pode ser simples mas nao consigo faze-lo rodar, segue o codigo abaixo.

import java.awt.;
import java.awt.event.
;

public class Grafico1 extends Frame implements ActionListener {

private Button bClear, bRemove, bPlot;

private List lista;

private TextField tfEntrada;
public static final void main(String args[]) {

new Grafico1().show();

}
public Grafico1() {

super(Exercicio 12);

setSize(200, 200);

setBackground(SystemColor.control);

Panel p1 = new Panel(new GridLayout(4, 1, 5, 5));

p1.add(tfEntrada = new TextField());

p1.add(bRemove = new Button(Retirar));

p1.add(bClear = new Button(Limpar));

p1.add(bPlot = new Button(Plotar));

Panel p2 = new Panel();

p2.add(p1);

add(West, p2);

add(Center, lista = new List());

tfEntrada.addActionListener(this);

bRemove.addActionListener(this);

bClear.addActionListener(this);

bPlot.addActionListener(this);

//   addWindowListener(new CloseWindowAndExit());

}
public void actionPerformed(ActionEvent e) {

if (e.getSource()==tfEntrada) {

try {

Integer.parseInt(tfEntrada.getText());

lista.add(tfEntrada.getText());

} catch (NumberFormatException exc) {

Toolkit.getDefaultToolkit().beep();

}

} else if (e.getSource()==bRemove) {

if (lista.getSelectedIndex()!=-1) {

lista.remove(lista.getSelectedIndex());

}

} else if (e.getSource()==bClear) {

lista.removeAll();

} else {

if (lista.getItemCount()>0) {

int v[] = new int[lista.getItemCount()];

for (int i=0; i<lista.getItemCount(); i++)

v[i] = Integer.parseInt(lista.getItem(i));

(new Histogram(v)).show();

}

}

}

}
class Histogram extends Frame {

private int value[];

private Color colors[];
public Histogram(int v[]) {

super(Histograma);

value = v;

setSize(200, 200);

setBackground(Color.white);

addWindowListener(new CloseWindow(this));

colors = new Color[5];

colors[0] = Color.red;

colors[1] = Color.blue;

colors[2] = Color.green;

colors[3] = Color.pink;

colors[4] = Color.orange;

}

public void paint(Graphics g) {

Insets border = getInsets();

Dimension d = getSize();

g.translate(border.left, border.top);

int barWidth = (d.width-border.left-border.right)/(value.length+1);

int hpos = barWidth/2;

int vpos = d.height-border.top-border.bottom - hpos;

for (int i=0; i<value.length; i++ ) {

g.setColor(colors[i%5]);

g.fillRect(hpos+barWidth<em>i, vpos-value[i], barWidth, value[i]);

g.drawString(""+value[i], hpos+barWidth</em>i, vpos-value[i]);

}

}

}
class CloseWindow extends WindowAdapter {

Frame parent;

public CloseWindow(Frame f) {

parent = f;

}

public void windowClosing(WindowEvent e) {

parent.setVisible(false);

parent.dispose();

}

}

Retorna o seguinte erro no prompt:

Exception in thread “main” java.lang.NoClassDefFoundError: Grafico1

10 Respostas

oliveirarenan

Amigo,

Aqui na minha máquina rodou perfeitamente.

Exception in thread "main" java.lang.NoClassDefFoundError: Grafico1

Quanto a esse erro…isso quer dizer que ele não esta encontrando a classe.

1º) Voce salvou o arquivo com o nome de Grafico1??? O Nome do arquivo deve ter o mesmo nome da classe.

2º) O classpath esta setado corretamente?

3º) Vc salvou em lugar correto?

qq coisa é só gritar…

falow

J

Renan, coloquei o arquivo Grafico1.java na pasta c:j2sdk1.4.2_05in
Abs.

oliveirarenan

Cara…faça o seguinte.

Coloque o arquivo grafico um no desktop.
sete o classpath
e tente rodar.

J

Caro Renan, me desculpe mas nao sei setar o classpath, voce poderia me dar umas dicas, tenho o Windows XP em maquina.
Abs

keller

da uma lida nesse topico no final tem um link para um .doc da uma lida nele…

http://www.guj.com.br/forum/viewtopic.php?t=16086

e pra compilar

pra executar

oliveirarenan

é isso ai…

só reforçando.

http://www.jhouse.com.br/tutoriais/java.doc

qq coisa é só gritar!!!

:wink:

J

Galera, Renan e Gui mt obrigado funcionou, somente nao consigo fechar a janela tem uma linha comentada no exemplo porem tirei as // e quando compilei deu outro erro, desculpem, porem estao tendo otima atencao comigo.
Abs

oliveirarenan

Vamos lá… :lol:

Que erro que deu???

vc tirou o comentário do listener???

// addWindowListener(new CloseWindowAndExit());
oliveirarenan

Bem, tente isso aqui no lugar do que esta comentado:

// Adicionando um ouvinte para fechar a janela
addWindowListener(new WindowAdapter()
  {
    public void windowClosing(WindowEvent e)
    {
      actionExit();
    }
  });

:lol: :lol: :lol: [/url]

keller

seuJFrame.setDefaultCloseAction(EXIT_ON_CLOSE);

como sua classe extende a JFrame use o this

Criado 28 de setembro de 2004
Ultima resposta 28 de set. de 2004
Respostas 10
Participantes 3