Introducción a JComponent en Java

Como todos somos conscientes del hecho de que casi todos los componentes de Swing como JButton, JPanel, JTable, etc. son los componentes básicos que se utilizan en el desarrollo de la aplicación Swing. Extienden la clase JComponent que está extendiendo la clase Container que a su vez extiende la clase Container de Java. Los componentes Swing también llevan consigo la funcionalidad AWT, ya que amplían la clase Container. De esta manera, se sigue la jerarquía de las clases Swing. Los componentes de nivel superior como JDialog y JFrame no heredan el JComponent por ser hijo del contenedor de nivel superior.

Sintaxis:

No existe tal sintaxis de JComponent en Java. Solo hay un constructor predeterminado de JComponent que cualquier clase puede heredar. A continuación se presenta la declaración básica de JComponent:

public abstract class JComponent
extends Container
implements Serializable

JContainer se utiliza de la manera mencionada a continuación:

public class Myclass extends JComponent(
public void method()
( )
)

Tipos y modificadores utilizados para JComponent en Java

Debajo de la tabla se muestran los tipos y modificadores utilizados para JComponent en Java:

Modificador o Tipo Campo Descripción
Cadena estática TOOL_TIP_TEXT_KEY También se conoce como "punta de valor", "etiqueta de paso elevado" y se utiliza para mostrar cuando el cursor está sobre el componente
int estático UNDEFINED_CONDITION Esta constante es utilizada básicamente por algunas de las API para mencionar las situaciones en las que no se especifica / define ninguna condición
int estático CUANDO_FOCUSSED Esta constante significa que el comando debe invocarse cuando el componente tiene el foco y se usa básicamente para registerKeyboardAction
int estático WHEN_ANCESTOR_OF_FOCUSED_COMPONENT Esta constante se utiliza en la situación del componente enfocado. Se utiliza para registerKeyboardAction, lo que significa que el comando se invocará cuando sea un componente enfocado o el componente receptor sea el ancestro del componente enfocado.
int estático WHEN_IN_FOCUSED_WINDOW Esta constante se usa generalmente para registerKeyboardAction y significa que el comando se invocará si el componente receptor está presente en la ventana enfocada actualmente o si es un componente enfocado.
Componente protegido UI ui Este componente es el delegado para la apariencia
EventListenerList protegido listenerList Esta clase de componente se utiliza para mantener una lista completa de oyentes de eventos.
AccessibleContext protegido accesibleContext Con este JComponent, AccessibleContext está asociado.

Métodos de JComponent en Java

A continuación se presentan algunos de los métodos más utilizados de JComponent en Java:

S.no. Nombre del método Tipo de modificador Descripción
1) setBackground (color bg) vacío Este método se utiliza para establecer el fondo de este componente.
2) setForeground (color fg) vacío Este método se usa para establecer el primer plano de este componente
3) setMaximumSize (Dimension maxSize) vacío Este método se utiliza para establecer el tamaño máximo de este componente en el tamaño máximo al valor dado.
4) setMinimumSize (Dimension minSize) vacío Este método se utiliza para establecer el tamaño mínimo de este componente en el valor dado.
5) addAncestorListener (escucha AncestorListener) vacío Este método se usa para agregar un AncestorListener para que reciba todos los AncestorEvents cuando cualquiera de sus Ancestros se mueva o se haga visible / invisible
6) firePropertyChange (String propertyName, boolean oldValue, boolean newValue) booleano Este método se utiliza para informar un cambio de propiedad enlazado para propiedades booleanas.
7) getAccessibleContext () Contexto accesible Este método se utiliza para obtener el contexto Accesible que está asociado con el JComponent.
8) getAncestorListeners () AncestorListener () Este método se utiliza para devolver una matriz de todos los oyentes ancestros que están registrados con este componente.
9) getToolTipText () Cuerda Este método se utiliza para devolver la cadena de la información sobre herramientas que ha establecido el método setToolTipText ()
10) getWidth () En t Este método se utiliza para obtener el ancho actual del componente.
11) getTopLevelAncestor () Envase Este método devuelve el ancestro de nivel superior de este componente. Si el componente aún no se ha agregado a ningún contenedor, devuelve nulo.
12) isRequestFocusEnabled () booleano Este método devuelve verdadero si este componente J debe enfocarse y falso si no.
13) processMouseEvent (MouseEvent e) vacío protegido Este método procesa cualquier evento del mouse que ocurra en este componente enviándolos a cualquier objeto MouseListener registrado.
14) isLightweightComponent (Componente c) boolean estático Este método devuelve verdadero si este componente es un componente ligero y falso si no.
15. getActionForKeyStroke (KeyStroke, keytroke) ActionListener Este método básicamente devuelve el objeto que realizará la acción para la pulsación de tecla dada.
dieciséis. getAccessibleContext () Contexto accesible Este método se utiliza para obtener el contexto accesible asociado con este JComponent
17) getBorder () Frontera Este método devuelve el borde de este componente y es nulo si no hay un borde establecido.

Programa para implementar JComponent en Java:

El siguiente programa implementa el JComponent en Java:

Código:

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JComponent;
import javax.swing.JFrame;
public class DrawCircle (
public static void main(String() args) (
new DrawCircle();
)
public DrawCircle() (
// creating a new JFrame using new keyword
JFrame fr = new JFrame("This is my first JComponet Program");
// setting the layout of the above created frame
fr.setLayout(new BorderLayout());
// adding the Circle in the frame
fr.getContentPane().add(new Circle(100, 100, 20));
// We can also get the background of frame using fr.setBackground(Color.blue)
method
fr.pack();
fr.setLocationRelativeTo(null);
// setting visibility of frame
fr.setVisible(true);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// setting the size of frame
fr.setSize(500, 300);
)
)
class Circle extends JComponent
(
private static final long serialVersionUID = 1L;
public Circle() ( )
public Circle(int b, int c, int dia)
(
// setting the location of Circle in Frame
super();
this.setLocation(b, c);
this.setSize(dia, dia);
)
@Override
public void paint(Graphics g)
(
super.paint(g);
// setting the color of circle
g.setColor(Color.yellow);
g.fillOval(0, 0, 80, 80);
)
)

Salida: la ejecución de los resultados del programa anterior en la salida mencionada a continuación.

Conclusión

La descripción anterior de JComponent explica claramente qué es JComponent y los diversos métodos y modificadores utilizados en JComponent. JComponent es uno de los temas más importantes cuando se trata de trabajar con gráficos. Dado que hay muchos métodos utilizados por JComponent utilizados para diferentes propósitos. Entonces, antes de usarlos, el programador debe entenderlo completamente.

Artículos recomendados

Esta es una guía de JComponent en Java. Aquí discutimos los tipos y la implementación modificada de métodos y programas de JComponent en Java. También puede consultar nuestros otros artículos relacionados para obtener más información.

  1. JTextField en Java
  2. Diagrama de componentes UML
  3. Componentes Hadoop
  4. JDialog en Java
  5. Guía completa de JFrame en Java
  6. JTable en Java | Constructores, Métodos en Java