Ciao a tutti, a scuola stiamo facendo grafica e oggi a casa, mentre tentavo di fare un programma, sono incappato in questo errore... Non capisco da cosa deriva però!
e questo è il codice dell'errore!codice:import java.awt.*; import java.awt.event.*; import javax.swing.*; public class FinCanv extends Frame implements ActionListener{ Persona a[]=new Persona[3]; Panel p1=new Panel(); Panel p2=new Panel(); Panel p3=new Panel(); Panel p4=new Panel(); private TextField nome=new TextField(15); private TextField cognome=new TextField(15); private Button b=new Button("Visualizza info"); private Choice codF=new Choice(); public FinCanv(){ super("Visualizza info"); addWindowListener(new GestoreFinestra()); p1.add(new Label("Nome")); p1.add(nome); p2.add(new Label("Cognome")); p2.add(cognome); p3.add(b); p4.add(codF); setLayout(new GridLayout(3,2,5,10)); add(p1); add(p2); add(p3); add(p4); b.addActionListener(this); for(int i=0;i<3;i++){ a[i].setNome(JOptionPane.showInputDialog("Inserisci nome")); a[i].setCognome(JOptionPane.showInputDialog("Inserisci cognome")); a[i].setCod(JOptionPane.showInputDialog("Inserisci codice fiscale")); } inCombo(); } public void inCombo(){ for(int i=0;i<3;i++){ codF.addItem(a[i].getCod()); } } public void actionPerformed(ActionEvent e) { String z=e.getActionCommand(); String c,b; if(z.equals("Visualizza info")){ switch(codF.getSelectedIndex()){ case 0: c=a[0].getNome(); nome.setText(c); b=a[0].getCognome(); cognome.setText(b); break; case 1: c=a[1].getNome(); nome.setText(c); b=a[1].getCognome(); cognome.setText(b); break; case 2: c=a[2].getNome(); nome.setText(c); b=a[2].getCognome(); cognome.setText(b); break; } } } } -------- main ------- public class Principale{ public static void main(String[] args) { FinCanv f=new FinCanv(); f.pack(); f.setVisible(true); } }
Grazie a tutti per l'aiuto!codice:Exception in thread "main" java.lang.NullPointerException at FinCanv.<init>(FinCanv.java:30) at Principale.main(Principale.java:5)![]()

Rispondi quotando