Introduction sur JComponent en Java

Comme nous sommes tous conscients du fait que presque tous les composants Swing comme JButton, JPanel, JTable, etc. sont les blocs de construction de base qui sont utilisés dans le développement de l'application Swing. Ils étendent la classe JComponent qui étend la classe Container qui à son tour étend la classe Container de Java. Les composants Swing portent également la fonctionnalité AWT lorsqu'ils étendent la classe Container. De cette façon, la hiérarchie des classes Swing est suivie. Les composants de niveau supérieur comme JDialog et JFrame n'héritent pas du JComponent car ils sont l'enfant du conteneur de niveau supérieur.

Syntaxe:

Il n'y a pas une telle syntaxe de JComponent en Java. Il n'y a qu'un seul constructeur par défaut de JComponent dont toute classe peut hériter. Ci-dessous, la déclaration de base de JComponent:

public abstract class JComponent
extends Container
implements Serializable

JContainer est utilisé de la manière mentionnée ci-dessous:

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

Types et modificateurs utilisés pour JComponent en Java

Sous le tableau montre les types et modificateurs utilisés pour JComponent en Java:

Modificateur ou type Champ La description
chaîne statique TOOL_TIP_TEXT_KEY Il est également connu sous le nom de «valeur tip», «flyover label» et est utilisé pour afficher lorsque le curseur est sur le composant
statique int UNDEFINED_CONDITION Cette constante est essentiellement utilisée par certaines des API afin de mentionner les situations où aucune condition n'est spécifiée / définie
statique int WHEN_FOCUSSED Cette constante signifie que la commande doit être invoquée lorsque le composant a le focus et est essentiellement utilisée pour registerKeyboardAction
statique int WHEN_ANCESTOR_OF_FOCUSED_COMPONENT Cette constante est utilisée dans la situation de la composante focalisée. Il est utilisé pour registerKeyboardAction, ce qui signifie que la commande sera invoquée lorsqu'il s'agit lui-même d'un composant focalisé ou que le composant récepteur est l'ancêtre du composant focalisé.
statique int WHEN_IN_FOCUSED_WINDOW Cette constante est généralement utilisée pour registerKeyboardAction et signifie que la commande sera invoquée si le composant récepteur est présent sur la fenêtre actuellement focalisée ou est lui-même un composant focalisé.
ComponentUI protégé ui Ce composant est le délégué de l'apparence
EventListenerList protégé listenerList Cette classe de composants est utilisée pour contenir une liste complète d'écouteurs d'événements.
protégé AccessibleContext accessibleContext Avec ce JComponent, AccessibleContext est associé.

Méthodes de JComponent en Java

Vous trouverez ci-dessous quelques-unes des méthodes les plus couramment utilisées de JComponent en Java:

S.no. Nom de la méthode Type de modificateur La description
1. setBackground (Couleur bg) néant Cette méthode est utilisée pour définir l'arrière-plan de ce composant
2. setForeground (Couleur fg) néant Cette méthode est utilisée pour définir le premier plan de ce composant
3. setMaximumSize (Dimension maxSize) néant Cette méthode est utilisée pour définir la taille maximale de ce composant sur la taille maximale à la valeur donnée.
4. setMinimumSize (Dimension minSize) néant Cette méthode est utilisée pour définir la taille minimale de ce composant à la valeur donnée.
5. addAncestorListener (écouteur AncestorListener) néant Cette méthode est utilisée pour ajouter un AncestorListener afin qu'il reçoive tous les AncestorEvents lorsque l'un de ses ancêtres est déplacé ou rendu visible / invisible
6. firePropertyChange (String propertyName, boolean oldValue, boolean newValue) booléen Cette méthode est utilisée pour signaler une modification de propriété liée pour les propriétés booléennes
sept. getAccessibleContext () AccessibleContext Cette méthode est utilisée pour obtenir le contexte accessible associé au JComponent.
8. getAncestorListeners () AncestorListener () Cette méthode est utilisée pour renvoyer un tableau de tous les écouteurs ancêtres qui sont enregistrés avec ce composant.
9. getToolTipText () Chaîne Cette méthode est utilisée pour renvoyer la chaîne de l'info-bulle qui a été définie par la méthode setToolTipText ()
dix. getWidth () int Cette méthode est utilisée pour obtenir la largeur actuelle du composant.
11. getTopLevelAncestor () Récipient Cette méthode renvoie l'ancêtre de niveau supérieur de ce composant. Si le composant n'est pas encore ajouté à un conteneur, il renvoie null.
12. isRequestFocusEnabled () booléen Cette méthode renvoie true si ce Jcomponent doit obtenir le focus et false sinon.
13. processMouseEvent (MouseEvent e) vide protégé Cette méthode traite tous les événements de souris se produisant sur ce composant en les répartissant sur tous les objets MouseListener enregistrés.
14. isLightweightComponent (Composant c) booléen statique Cette méthode renvoie true si ce composant est un composant léger et false dans le cas contraire.
15. getActionForKeyStroke (KeyStroke, frappe) ActionListener Cette méthode renvoie essentiellement l'objet qui effectuera l'action pour la frappe donnée.
16. getAccessibleContext () AccessibleContext Cette méthode est utilisée pour obtenir le contexte accessible associé à ce JComponent
17. getBorder () Frontière Cette méthode renvoie la bordure de ce composant et null s'il n'y a pas de bordure définie le composant

Programme pour implémenter JComponent en Java:

Le programme ci-dessous implémente le JComponent en Java:

Code:

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);
)
)

Sortie: L' exécution du programme ci-dessus entraîne la sortie mentionnée ci-dessous.

Conclusion

La description ci-dessus de JComponent explique clairement ce qu'est le JComponent et les diverses méthodes et modificateurs utilisés dans JComponent. JComponent est l'un des sujets les plus importants lorsqu'il s'agit de travailler avec des graphiques. Puisqu'il existe de nombreuses méthodes utilisées par JComponent utilisées à des fins différentes. Donc, avant de les utiliser, il doit être bien compris par le programmeur.

Articles recommandés

Ceci est un guide de JComponent en Java. Ici, nous discutons des types et des implémentations modifiées, des méthodes et des programmes de JComponent en Java. Vous pouvez également consulter nos autres articles connexes pour en savoir plus-

  1. JTextField en Java
  2. Diagramme des composants UML
  3. Composants Hadoop
  4. JDialog en Java
  5. Guide complet de JFrame en Java
  6. JTable en Java | Constructeurs, méthodes en Java