Según se describe en la documentación de Java de Oracle , marcos de ventanas son programas que aparecen en Windows . Los marcos pueden mostrar el contenido principal de una aplicación , o mantener el contenido de cuadros de diálogo, como los de cargar y guardar archivos . Applets de Java ( programas que se ejecutan en los navegadores y otros contenedores que realizan relativamente pocas operaciones ) no suelen crear nuevos marcos, a pesar de que tienen la capacidad de hacerlo. El beneficio de la apertura de un nuevo marco de un applet es la claridad : al colocar el contenido en un nuevo marco , como la solicitud de un usuario que introduzca su nombre , el desarrollador evita abarrotar marco principal del applet. Cosas que necesitará sobre The Java Development Kit ( JDK)
Mostrar más instrucciones
1
Abra cualquier editor de texto o procesador de texto y escriba o pegue en un nuevo documento de este código de programa subprograma :
public void init () {
//Obtener panel de contenido , lo que tenemos que añadir botones y otro contenido de
paneForContent Container = getContentPane ();
paneForContent.setLayout ( nueva BorderLayout ( 12,12 ));
JLabel titulo = new JLabel ( "Demo Frame ");
paneForContent.add (título, BorderLayout.NORTH ) ;
JPanel somePanel = new JPanel ();
JLabel someLabel = new JLabel ( "Pulse el botón. ");
< p > somePanel.add ( someLabel ) ;
paneForContent.add ( somePanel , BorderLayout.CENTER ) ;
panelForButtons JPanel = new JPanel ();
JButton someButton = new JButton ( "Press BorderLayout.SOUTH ) ;
}
/* por
actionPerformed () es llamado cuando el usuario presiona un botón
* /foto
public void actionPerformed ( ActionEvent evt ) {
//abrir un nuevo marco ( ventana)
attachNewFrame (); }
}
Este código crea un nuevo applet para el navegador para visualizar . la función principal es init (), que crea la etiqueta y el botón de la muestra del applet . el código asigna , a través de la llamada " addActionListener " , la acción a realizar cuando se pulsa el botón " someButton ' . Cuando se produce este caso, el entorno de ejecución de Java ( JRE ) llama a la función " actionPerformed " del applet , que a su vez llama a la función para crear el nuevo marco, " attachNewFrame . "
2
Copiar el código justo después de la llave de cierre después de la declaración " paneForContent.add ( panelForButtons , BorderLayout.SOUTH ) ; "
private static void attachNewFrame () {
JFrame newFrame = new JFrame ( " Aquí hay una newFrame ");
newFrame.setDefaultCloseOperation ( JFrame.DISPOSE_ON_CLOSE ) ;
JLabel aLabel = new JLabel (". " ) ;
aLabel.setPreferredSize ( nueva dimensión ( 150 , 125) ) .
newFrame.getContentPane () add ( aLabel , BorderLayout.CENTER ) ;
//Mostrar el marco
newFrame.pack ();
newFrame.setVisible ( true); }
Este código llama al constructor " JFrame " , que crea un nuevo objeto , virtual que representa el nuevo marco. La llamada de función setDefaultCloseOperation cuenta el marco de qué hacer cuando el usuario hace clic en el botón de salida - cerrar . La función " setVisible " " paquete " y llama a visualizar el encuadre . Las declaraciones que implican al objeto " aLabel " crear algún contenido de ejemplo que se muestra en el cuadro. Sin este contenido, el marco podría mostrar, pero se minimiza a una barra de título apenas visible .
3
Guardar el documento como tipo " Texto sin formato ", con el nombre de archivo " AppletWithFrame.java . "
4
pegar en un nuevo documento de esta página HTML , que se abrirá el applet :
< código del applet =" AppletWithFrame . clase "
ancho = 250
altura
= 250
código base =" . " >
< /applet >
< /html>
5
Guarde el documento HTML como " AppletWithFrame.html , " en la misma carpeta que el archivo java que guardó en el paso 3.
6
Abra un símbolo del sistema DOS en la carpeta que contiene el archivo de Java, y compilar el programa escribiendo " javac AppletWithFrame.java . "
< br > 7
Enter, en el símbolo del sistema, " appletviewer AppletWithFrame.html " para ejecutar el applet.
8 Presione el botón del applet " Press me " para ejecutar el código del applet para crear una nueva marco. Aparecerá el nuevo marco.