ciao

non riesco ad utilizzare il layout a scheda con swing.
se non utilizzo swing funziona perfettamente, come mai???

la classe con swing riesco a compilarla ma quanto la eseguo mi da un errore
questa č la classe con swing :


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.lang.Object;

public class scheda extends JFrame implements ActionListener{

private JPanel tabs;
private JPanel cards;
private CardLayout layout;

private JButton first;
private JButton previous;


public scheda() {

super("prova layout a scheda");


layout = new CardLayout();

setLayout(layout);


tabs = new JPanel();


first = new JButton("<<");
tabs.add(first);

add("primo", tabs);


cards = new JPanel();

previous = new JButton("<");
cards.add(previous);

add("secondo", cards);


first.addActionListener(this);
previous.addActionListener(this);

pack();
setSize(500, 360);
setVisible(true);


}


public void actionPerformed(ActionEvent e)
{
String selected = e.getActionCommand();

if(selected.equals("<<")) { layout.show(this, "secondo"); }

if(selected.equals("<")) { layout.show(this, "primo"); }


}





public static void main(String argv[]) {

scheda frame = new scheda();
frame.show();

}
}




questa invece č l'altra che funziona perfettamente:







import java.awt.*;
import java.awt.event.*;
import java.lang.Object;

public class javaCenterFrame extends Frame implements ActionListener{

private Panel tabs;
private Panel cards;
private CardLayout layout;

private Button first;
private Button last;
private Button previous;


public javaCenterFrame() {

super("javaCenter v1.0");


layout = new CardLayout();

setLayout(layout);


tabs = new Panel();

first = new Button("<<");
tabs.add(first);
previous = new Button("<");
tabs.add(previous);

add("North", tabs);

first.addActionListener(this);
previous.addActionListener(this);


cards = new Panel();


last = new Button("pulsante last");
last.addActionListener(this);

cards.add(last);


add("Center", cards);

//addWindowListener(this);

pack();
setSize(500, 360);
setVisible(true);


}

public void actionPerformed(ActionEvent e)
{
String selected = e.getActionCommand();

if(selected.equals("<<")) { layout.show(this, "Center"); }

if(selected.equals("<")) { layout.show(this, "North"); }
if(selected.equals("pulsante last")) { layout.show(this, "North"); }

}





public static void main(String argv[]) {

javaCenterFrame frameprimo = new javaCenterFrame();


}
}



grazie
ciao