PDA

Visualizza la versione completa : Semplice applet java


tato83
24-05-2003, 10:06
Ho creato una semplice applet formata da un bottone sul quale c' scritto "cliccami" e da un Textfiel nel quale c' scritto "cancellami".Dovrebbe succedere che quando il pulsante viene premuto quello che c' scritto nel text field cambi in "mi hai cancellato".Riesco a far tutto ma non a impostare l'evento...qualcuno postrebbe aiutarmi?Grazie,,,

Ecco il codice:
import java.awt.*;
import java.applet.*;
import java.awt.event.*;

public class Prova extends Applet implements ActionListener {
public void init() {
Panel b=new Panel();
b.setSize(50,50);
Button click=new Button("Cliccami");
TextField t=new TextField("Cancellami");
add(click);
add(t);
click.addActionListener(this);
repaint();
}

public void actionPerformed(ActionEvent e) {
t.setText("Mi hai cancellato");
repaint();}

public void paint(Graphics g) {
}

private TextField t;

Xadoom
24-05-2003, 11:41
Ecco il codice giusto:


package Applet;
import java.awt.*;
import java.applet.*;
import java.awt.event.*;

public class Prova extends Applet implements ActionListener {
public TextField t;

public void init() {
Panel b=new Panel();
b.setSize(50,50);
Button click=new Button("Cliccami");
t=new TextField("Cancellami");
add(click);
add(t);
click.addActionListener(this);
repaint();
}

public void actionPerformed(ActionEvent e) {
t.setText("Mi hai cancellato");
repaint();}

public void paint(Graphics g) {
}

Xadoom
24-05-2003, 11:44
In pratica,avendo ri-dichiarato TextField all'interno del metodo init() come se hai "sovrascritto" la variabile t all'interno del metodo,ma t all'esterno del metodo init() rimaneva non inizializzata e,quindi ti dava errore di NullPointer (ovvero che t puntava a nulla.....(non era inizializzata)).
Mi scuso per i termini errati che ho usato, ma spero di aver chiarito le idee......:ciauz:

tato83
24-05-2003, 11:53
kiarissimo....grazie

Loading