|
| Método | Descripción |
| JInternalFrame() | Crea un internal frame o ventana interna. |
| JInternalFrame(String) | Crea un internal frame con el título indicado. |
| JInternalFrame(String, boolean) | Crea un internal frame con el título indicado. El argumento boolean, se refiere a si se permite al usuario que redimensione la ventana (el valor por defecto es false). |
| JInternalFrame(String, boolean, boolean) | Es idéntico al caso anterior, con la salvedad de que aparece un tercer argumento boolean que se refiere a si se permite al usuario que cierre la ventana (el valor por defecto es false). |
| JInternalFrame(String, boolean, boolean, boolean) | Es idéntico al caso anterior, con la salvedad de que aparece un cuarto argumento boolean que se refiere a si se permite al usuario que maximice la ventana (el valor por defecto es false). |
| JInternalFrame(String, boolean, boolean, boolean, boolean) | Es idéntico al caso anterior, con la salvedad de que aparece un quinto argumento boolean que se refiere a si se permite al usuario que minimice la ventana (el valor por defecto es false). |
| Método | Descripción |
| void setLocation(Point) void setLocation(int,int) | Establece la posición del frame interno. |
| void setSize(Dimension) void setSize(int,int) | Establece el tamaño del frame interno. |
| void setBounds(Rectangle) void setBounds(int,int,int,int) | Establece el tamaño y la posición del frame interno. |
| void pack() | Empaqueta el frame interno. |
| void moveToFront() void moveToBack() | Si el frame interno está contenido en un LayeredPane, a través de estos métodos, podremos mover el frame interno, adelante y atrás, respectivamente. |
| void setDefaultCloseOperation(int) int getDefaultCloseOperation() | Establece y obtiene, respectivamente, lo que ocurre cuando se intenta cerrar el frame interno. Los posibles valores son HIDE_ON_CLOSE (por defecto), DO_NOTHING_ON_CLOSE, DISPOSE_ON_CLOSE. |
| void setClosed(boolean) boolean isClosed() | Estable y obtiene, respectivamente, si el frame interno está cerrado actualmente. |
| void setIcon(boolean) boolean isIcon() | Establece y obtiene, respectivamente, si el frame interno está minimizado actualmente. |
| void setMaximum(boolean) boolean isMaximum() | Establece y obtiene, respectivamente, si el frame interno esta maximizado actualmente. |
| void setSelected(boolean) boolean isSelected() | Establece y obtiene, respectivamente, si el frame interno está seleccionado actualmente. |
| void setFrameIcon(Icon) Icon getFrameIcon() | Estable y obtiene, respectivamente, el icono mostrado en el título del frame interno. |
| void setResizable(boolean) boolean isResizable() | Establece y obtiene, respectivamente, si el usuario puede redimensionar el frame interno. |
| void setClosable(boolean) boolean isClosable() | Establece y obtiene, respectivamente, si el usuario puede cerrar el frame interno. |
| void setIconifiable(boolean) boolean isIconifiable() | Establece y obtiene, respectivamente, si el usuario puede minimizar el frame interno. |
| void setMaximizable(boolean) boolean isMaximizable() | Establece y obtiene, respectivamente, si el usuario puede maximizar el frame interno. |
| Método | Descripción |
| void internalFrameOpened(InternalFrameEvent) | es llamado justo después de que el frame interno se muestre por primera vez |
| void internalFrameClosing(InternalFrameEvent) | se llama después de que el usuario pida cerrar el frame interno. Por defecto JInternalFrame oculta la ventana cuando el usuario la cierra. Para cambiar esta última acción se puede utilizar el método setDefaultCloseOperation de JinternalFrame, que podrá recibir como parámetros las constantes definidas en WindowConstants DISPOSE_ON_CLOSE y DO_NOTHING_ON_CLOSE |
| void internalFrameClosed(InternalFrameEvent) | llamado por el AWT justo después de que se haya ocultado el frame interno escuchado |
| void internalFrameIconified(InternalFrameEvent) | llamado inmediatamente después de que el frame interno escuchado sea iconificado |
| void internalFrameDeiconified(InternalFrameEvent) | llamado inmediatamente después de que el frame interno escuchado sea desiconificado |
| void internalFrameActivated(InternalFrameEvent) | se llama justo después de que el frame interno escuchado sea activado |
| void internalFrameDeactivated(InternalFrameEvent) | se llama justo después de que el frame interno escuchado sea desactivado |
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class InternalFrameTest extends JFrame implements ActionListener{ JDesktopPane desktop; static int numDeInternos=0; static final int xOffset=20; static final int yOffset=20; public InternalFrameTest() { super("Ejemplo de Internal Frames"); Dimension tamPantalla=Toolkit.getDefaultToolkit().getScreenSize(); setBounds(100,100, tamPantalla.width-200, tamPantalla.height-200); addWindowListener(new CerrarInternalFrameTest()); desktop=new JDesktopPane(); crearFrame(); setContentPane(desktop); JMenuBar menuBar=new JMenuBar(); JMenu menu=new JMenu("Archivo"); JMenuItem menuItem=new JMenuItem("Nuevo"); // añadimos item al menu y el menu a la barra menu.add(menuItem); menuBar.add(menu); setJMenuBar(menuBar); // controlamos la eleccion por el usuario de la opcion "Nuevo" menuItem.addActionListener(this); } protected void crearFrame() { JInternalFrame frame= new JInternalFrame("Archivo #"+(++numDeInternos), true, // resizable true, // cerrable true, // maximizable true); // iconificable // hay que establecer siempre el tamano frame.setSize(290,290); // hay que establecer siempre la localizacion frame.setLocation( xOffset*numDeInternos,yOffset*numDeInternos); try { frame.setSelected(true); // activamos el actual frame } catch(java.beans.PropertyVetoException e) { } desktop.add(frame); // al no especificar un segundo argumento // al metodo add, se esta indicando que el // frame se incluya en la capa por defecto, // esto es, DEFAULT_LAYER } public void actionPerformed(ActionEvent e) { crearFrame(); } } class CerrarInternalFrameTest extends WindowAdapter { public static void main(String args[]) { InternalFrameTestframe=new InternalFrameTest(); frame.show(); } public void WindowClosing(WindowEvent e) { System.exit(0); } }