Introdução ao JComponent em Java

Como todos sabemos o fato de que quase todos os componentes do Swing, como JButton, JPanel, JTable, etc, são os componentes básicos usados ​​no desenvolvimento do aplicativo Swing. Eles estendem a classe JComponent, que está estendendo a classe Container, que por sua vez, estende a classe Container de Java. Os componentes de oscilação também carregam a funcionalidade AWT consigo, à medida que estendem a classe Container. Dessa maneira, a hierarquia das classes Swing é seguida. Componentes de nível superior, como JDialog e JFrame, não herdam o JComponent por ser filho do contêiner de nível superior.

Sintaxe:

Não existe essa sintaxe do JComponent em Java. Existe apenas um construtor padrão do JComponent que qualquer classe pode herdar. Abaixo é fornecida a declaração básica do JComponent:

public abstract class JComponent
extends Container
implements Serializable

O JContainer é usado da maneira mencionada abaixo:

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

Tipos e modificadores usados ​​para JComponent em Java

Abaixo da tabela mostra os tipos e modificadores usados ​​para JComponent em Java:

Modificador ou Tipo Campo Descrição
String estática TOOL_TIP_TEXT_KEY Também é conhecido como "dica de valor", "rótulo de passagem" e é usado para exibir quando o cursor está sobre o componente
estática int UNDEFINED_CONDITION Essa constante é basicamente usada por algumas APIs para mencionar as situações em que nenhuma condição é especificada / definida
estática int WHEN_FOCUSSED Essa constante significa que o comando deve ser chamado quando o componente tiver o foco e for basicamente usado para registerKeyboardAction
estática int WHEN_ANCESTOR_OF_FOCUSED_COMPONENT Essa constante é usada na situação do componente focalizado. É usado para registerKeyboardAction, o que significa que o comando será chamado quando ele próprio for um componente focado ou o componente receptor for o ancestral do componente focado.
estática int WHEN_IN_FOCUSED_WINDOW Essa constante é geralmente usada para registerKeyboardAction e significa que o comando será chamado se o componente receptor estiver presente na janela atualmente focada ou se for um componente focado.
ComponentUI protegido ui Este componente é o delegado para a aparência
eventListenerList protegido listenerList Essa classe de componente é usada para armazenar uma lista completa de ouvintes de eventos.
AccessibleContext protegido affordableContext Com este JComponent, AccessibleContext está associado.

Métodos de JComponent em Java

Abaixo estão alguns dos métodos mais usados ​​do JComponent em Java:

S.no. Nome do método Tipo de modificador Descrição
1 setBackground (cor bg) vazio Este método é usado para definir o plano de fundo deste componente
2) setForeground (Cor fg) vazio Este método é usado para definir o primeiro plano deste componente
3) setMaximumSize (Dimension maxSize) vazio Este método é usado para definir o tamanho máximo desse componente para o tamanho máximo para o valor fornecido.
4) setMinimumSize (Dimension minSize) vazio Este método é usado para definir o tamanho mínimo deste componente para o valor fornecido.
5) addAncestorListener (ouvinte AncestorListener) vazio Este método é usado para adicionar um AncestorListener para que ele receba todos os AncestorEvents quando qualquer um de seus Ancestrais for movido ou tornado visível / invisível
6 firePropertyChange (String propertyName, boolean oldValue, boolean newValue) boleano Este método é usado para relatar uma alteração de propriedade vinculada para propriedades booleanas
7) getAccessibleContext () AccessibleContext Este método é usado para obter o contexto Acessível associado ao JComponent.
8) getAncestorListeners () AncestorListener () Este método é usado para retornar uma matriz de todos os ouvintes ancestrais registrados com este componente.
9 getToolTipText () Corda Este método é usado para retornar a string da dica de ferramenta que foi definida pelo método setToolTipText ()
10) getWidth () int Este método é usado para obter a largura atual do componente.
11) getTopLevelAncestor () Recipiente Este método retorna o ancestral de nível superior deste componente. Se o componente ainda não foi adicionado a nenhum contêiner, ele retornará nulo.
12) isRequestFocusEnabled () boleano Esse método retorna true se esse Jcomponent deve obter foco e false, se não.
13) processMouseEvent (MouseEvent e) vazio protegido Este método processa quaisquer eventos de mouse que ocorram nesse componente, despachando-os para qualquer objeto MouseListener registrado.
14) isLightweightComponent (Componente c) booleano estático Este método retorna true se este componente é um componente leve e false se não.
15 getActionForKeyStroke (KeyStroke, keystroke) ActionListener Esse método basicamente retorna o objeto que executará a ação para o pressionamento de tecla especificado.
16 getAccessibleContext () AccessibleContext Este método é usado para obter o contexto acessível associado a este JComponent
17 getBorder () Fronteira Este método retorna a borda deste componente e é nulo se não houver borda, configure o componente

Programa para implementar o JComponent em Java:

O programa abaixo implementa o JComponent em 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);
)
)

Saída: A execução do programa acima resulta na saída mencionada abaixo.

Conclusão

A descrição acima do JComponent explica claramente o que o JComponent e os vários métodos e modificadores usados ​​no JComponent. O JComponent é um dos tópicos mais importantes quando se trata de trabalhar com gráficos. Como existem muitos métodos usados ​​pelo JComponent usados ​​para diferentes propósitos. Portanto, antes de usá-los, deve ser entendido completamente pelo programador.

Artigos recomendados

Este é um guia para o JComponent em Java. Aqui discutimos tipos e métodos modificados, e implementação de programa do JComponent em Java. Você também pode consultar nossos outros artigos relacionados para saber mais.

  1. JTextField em Java
  2. Diagrama de componente UML
  3. Componentes do Hadoop
  4. JDialog em Java
  5. Guia completo para JFrame em Java
  6. JTable em Java | Construtores, Métodos em Java