Digamos que hay un botón y si usted se haga clic en un nuevo marco aparecerá y así sucesivamente…

InformationsquelleAutor apawna | 2010-03-11

3 Comentarios

  1. 3

    La setVisible(true); función se utiliza para mostrar un frame. Crear un objeto de la imagen deseada y llamar a esta función. Algo como esto

    //The applications first or the main frame
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    public class MainFrame extends JFrame {
    private JButton myFirstButton;
    private JButton mySecondButton;
    //Constructor for a new frame
    public MainFrame {
    super("My First Button Program");
    myFirstButton = new JButton("First Frame");
    myFirstButton.setFont(new Font( "Arial", Font.BOLD, 18));
    myFirstButton.setBackground(Color.red);
    mySecondButton = new JButton("New Frame");
    mySecondButton.setFont(new Font( "Arial", Font.BOLD, 18));
    mySecondButton.setBackground(Color.green);
    Container c = getContentPane();
    FlowLayout fl = new FlowLayout(FlowLayout.LEFT);
    c.setLayout(fl);
    c.add (myFirstButton);
    c.add (mySecondButton);
    ButtonHandler handler = new ButtonHandler();    //creation of a new Object
    myFirstButton.addActionListener(handler);          //Attach/register handler to myFirstButton
    mySecondButton.addActionListener(handler);        //Attach/register handler to mySecondButton
    setSize(400, 300);
    show();
    }
    public static void main(String [] args) {
    //Make frame
    MainFrame f = new MainFrame();
    f.addWindowListener(
    new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
    //This closes the window and terminates the
    //Java Virtual Machine in the event that the
    //Frame is closed by clicking on X.
    System.out.println("Exit via windowClosing.");
    System.exit(0);
    }
    }
    );
    } //end of main
    //inner class for button event handling
    private class ButtonHandler implements ActionListener {
    public void actionPerformed(ActionEvent e) {
    if (e.getSource() == myFirstButton) {
    new NewFrame1();
    }
    if (e.getSource() == mySecondButton) {
    new NewFrame2();
    }
    }
    } //end of inner class
    } //end of outer class

    El marco de abrirse por primera botón

    //import statements here
    public class NewFrame1 extends JFrame implements ActionListener
    {
    //initialises the frame and opens it
    public NewFrame1()
    {
    JButton open = new JButton("New Window");
    open.addActionListener(this);
    add(open);
    setVisible(true);
    }
    public void actionPerformed(ActionEvent event)
    {
    //code for the new frame
    }
    }

    El marco abierto para el segundo botón

    //import statements here
    public class NewFrame2 extends JFrame implements ActionListener
    {
    //initialises the frame and opens it
    public NewFrame2()
    {
    JButton open = new JButton("New Window");
    open.addActionListener(this);
    add(open);
    setVisible(true);
    }
    public void actionPerformed(ActionEvent event)
    {
    //code for the new frame
    }
    }
  2. 1

    Hacer una JFrame clase, llamar MainFrame por ejemplo, y a partir de aquí se abre JPanels, que manera de tener un lugar centralizado para commuincate de datos entre los diferentes marcos,ventanas emergentes,cuadros de diálogo de opciones …etc

    Nota al margen: yo recomiendo el uso de un patrón de diseño MVC

Dejar respuesta

Please enter your comment!
Please enter your name here