Escolar Documentos
Profissional Documentos
Cultura Documentos
ARMADAS ESPE-L
ASIGNATURA:
PATRONES DE DISEÑO
DOCENTE:
NOMBRE:
ISRAEL TENEDA
TAREA:
Nos permite crear solo una instacia de un JPanel mediante el patrón Singleton
Código del Patrón
Clase VPnael
package singleton;
import java.awt.Dimension;
import java.beans.PropertyVetoException;
import java.util.LinkedHashMap;
import javax.swing.JDesktopPane;
import javax.swing.JInternalFrame;
import javax.swing.JPanel;
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
public abstract class VPanel extends JPanel {
JInternalFrame self_jif;
protected VPanel self_panel;
boolean loading;
boolean showing;
self_jif.add(self_panel);
self_jif.pack();
self_jif.setVisible(true);
desktopPane.add(self_jif);
centerJIF();
try {
self_jif.setSelected(true);
} catch (PropertyVetoException e) {
handleError(e);
}
loading = false;
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package singleton;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTextField;
/**
*
* @author israt
*/
public class Test_Vpanel {
public static void main(String[] args) {
JFrame jf = new JFrame("MainFrame");
JDesktopPane jdp = new JDesktopPane();
jf.setExtendedState( jf.getExtendedState()|JFrame.MAXIMIZED_BOTH );
jf.setContentPane(jdp);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public Test_VPanel() {
super("Test Panel");
}
@Override
public void init() {
setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.weightx = 1;
gbc.gridwidth = 1;
gbc.gridy = 0;
gbc.insets = new Insets(4,4,4,4);
add(label, gbc);
gbc.gridy = 1;
add(textField, gbc);