Clase de diseño de tarjeta AWT

Introducción

La clase CardLayoutorganiza cada componente en el contenedor como una tarjeta. Solo se ve una tarjeta a la vez y el contenedor actúa como una pila de tarjetas.

Declaración de clase

A continuación se muestra la declaración de java.awt.CardLayout clase:

public class CardLayout
   extends Object
      implements LayoutManager2, Serializable

Constructores de clases

SNConstructor y descripción
1

CardLayout()

Crea un nuevo diseño de tarjeta con espacios de tamaño cero.

2

CardLayout(int hgap, int vgap)

Crea un nuevo diseño de tarjeta con los espacios horizontales y verticales especificados.

Métodos de clase

SNMétodo y descripción
1

void addLayoutComponent(Component comp, Object constraints)

Agrega el componente especificado a la tabla interna de nombres de este diseño de tarjeta.

2

void addLayoutComponent(String name, Component comp)

Si el administrador de diseño usa una cadena por componente, agrega la composición del componente al diseño, asociándola con la cadena especificada por su nombre.

3

void first(Container parent)

Da la vuelta a la primera carta del contenedor.

4

int getHgap()

Obtiene el espacio horizontal entre componentes.

5

float getLayoutAlignmentX(Container parent)

Devuelve la alineación a lo largo del eje x.

6

float getLayoutAlignmentY(Container parent)

Devuelve la alineación a lo largo del eje y.

7

int getVgap()

Obtiene el espacio vertical entre componentes.

8

void invalidateLayout(Container target)

Invalida el diseño, lo que indica que si el administrador de diseño tiene información almacenada en caché, debe descartarse.

9

void last(Container parent)

Da la vuelta a la última carta del contenedor.

10

void layoutContainer(Container parent)

Presenta el contenedor especificado usando este diseño de tarjeta.

11

Dimension maximumLayoutSize(Container target)

Devuelve las dimensiones máximas para este diseño dados los componentes en el contenedor de destino especificado.

12

Dimension minimumLayoutSize(Container parent)

Calcula el tamaño mínimo del panel especificado.

13

void next(Container parent)

Pasa a la siguiente tarjeta del contenedor especificado.

14

Dimension preferredLayoutSize(Container parent)

Determina el tamaño preferido del argumento del contenedor utilizando este diseño de tarjeta.

15

void previous(Container parent)

Vuelve a la tarjeta anterior del contenedor especificado.

dieciséis

void removeLayoutComponent(Component comp)

Elimina el componente especificado del diseño.

17

void setHgap(int hgap)

Establece el espacio horizontal entre componentes.

18

void setVgap(int vgap)

Establece el espacio vertical entre componentes.

19

void show(Container parent, String name)

Cambia al componente que se agregó a este diseño con el nombre especificado, usando addLayoutComponent.

20

String toString()

Devuelve una representación de cadena del estado de este diseño de tarjeta.

Métodos heredados

Esta clase hereda métodos de las siguientes clases:

  • java.lang.Object

Ejemplo de diseño de tarjeta

Cree el siguiente programa java usando cualquier editor de su elección en digamos D:/ > AWT > com > tutorialspoint > gui >

AwtLayoutDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtLayoutDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtLayoutDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtLayoutDemo  awtLayoutDemo = new AwtLayoutDemo();  
      awtLayoutDemo.showCardLayoutDemo();       
   }
      
   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showCardLayoutDemo(){
      headerLabel.setText("Layout in action: CardLayout");      

      final Panel panel = new Panel();
      panel.setBackground(Color.CYAN);
      panel.setSize(300,300);

      CardLayout layout = new CardLayout();
      layout.setHgap(10);
      layout.setVgap(10);
      panel.setLayout(layout);        

      Panel buttonPanel = new Panel(new FlowLayout());

      buttonPanel.add(new Button("OK"));
      buttonPanel.add(new Button("Cancel"));    

      Panel textBoxPanel = new Panel(new FlowLayout());

      textBoxPanel.add(new Label("Name:"));
      textBoxPanel.add(new TextField(20));

      panel.add("Button", buttonPanel);
      panel.add("Text", textBoxPanel);

      Choice choice = new Choice();
      choice.add("Button");
      choice.add("Text");

      choice.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            CardLayout cardLayout = (CardLayout)(panel.getLayout());
            cardLayout.show(panel, (String)e.getItem());
         }
      });
      controlPanel.add(choice);
      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }
}

Compile el programa usando el símbolo del sistema. IrD:/ > AWT y escriba el siguiente comando.

D:\AWT>javac com\tutorialspoint\gui\AwtlayoutDemo.java

Si no aparece ningún error, eso significa que la compilación se realizó correctamente. Ejecute el programa usando el siguiente comando.

D:\AWT>java com.tutorialspoint.gui.AwtlayoutDemo

Verifique la siguiente salida