Mostrar varias ventanas java con swing

Alejandro
20 de Febrero del 2005
Hola amigos, estoy comenzados a hacer cosillas con java. Estoy intentando hacer una ventana JDos con un boton y que al pulsar ese boton me salga otra ventana JUno, pero me da un error de compilacion diciendo que no reconoce el objeto JFrame. Alguien me puede ayudar ??? Os dejo el codigo aqui puesto.
Por otro lado, haciendo lo mismo, pero con un menu, seria muy distinto el codigo ?? Es decir, un menu pull-down con varias opciones, de manera que al hacer click en una opcion, salga una ventana y así sucesivamente. Graciassss.

import java.awt.*;
import javax.swing.*;

public class JDos extends JPanel
{


static class JUno extends JFrame
{
JFrame p=new JFrame();
JLabel hola=new JLabel("Holaaaaaaaaa");
p.getContentPane().add(hola,"Center");
p.setSize(200,100);
p.setVisible(true);
}


public JDos()
{
JButton boton1=new JButton("Atrevete a pulsar");
boton1.addActionListener( new ActionListener () {
public void actionPerformed(ActionEvent evt){
new JUno();
}
});
boton1.setToolTipText("Soy el boton 1, pecador");
add(boton1);
}

public static void main (String a[])
{
JFrame ventana=new JFrame("Tutorial");
ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ventana.getContentPane().add(new JDos(),"Center");
ventana.setSize(500,100);
ventana.setVisible(true);
}

}

pllamosas
20 de Febrero del 2005
Lo que sucede es que tienes un par de errores que has pasado por alto.
Veamos:
para usar los listeners debes importar:

import java.awt.event.*;

la clase interna JUno esta mal hecha y tampoco no tiene sentido en hacerla estatica, aqui te doy la correcion:

class JUno extends JFrame {
public JUno() {
JFrame p = new JFrame();
JLabel hola=new JLabel("Holaaaaaaaaa");
p.getContentPane().add(hola, "Center");
p.setSize(200,100);
p.setVisible(true);
}
}