Wprowadzenie do JComponent w Javie

Jak wszyscy wiemy, że prawie wszystkie komponenty Swing, takie jak JButton, JPanel, JTable itp., Są podstawowymi elementami składowymi, które są używane w rozwoju aplikacji Swing. Rozszerzają klasę JComponent, która rozszerza klasę Container, która z kolei sama rozszerza klasę Java kontenera. Elementy Swing przenoszą funkcjonalność AWT również ze sobą, ponieważ rozszerzają klasę Container. W ten sposób przestrzegana jest hierarchia klas Swing. Komponenty najwyższego poziomu, takie jak JDialog i JFrame, nie dziedziczą JComponent, ponieważ jest dzieckiem kontenera najwyższego poziomu.

Składnia:

W Javie nie ma takiej składni JComponent. Istnieje tylko jeden domyślny konstruktor JComponent, który może dziedziczyć każda klasa. Poniżej podano podstawową deklarację JComponent:

public abstract class JComponent
extends Container
implements Serializable

JContainer jest używany w sposób opisany poniżej:

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

Typy i modyfikatory używane dla JComponent w Javie

Poniżej tabela pokazuje typy i modyfikatory używane dla JComponent w Javie:

Modyfikator lub typ Pole Opis
ciąg statyczny TOOL_TIP_TEXT_KEY Jest również znany jako „wskazówka wartości”, „etykieta estakady” i służy do wyświetlania, gdy kursor znajduje się nad elementem
static int UNDEFINED_CONDITION Ta stała jest używana przez niektóre interfejsy API w celu wspomnienia sytuacji, w których nie określono / nie zdefiniowano żadnego warunku
static int WHEN_FOCUSSED Ta stała oznacza, że ​​polecenie powinno zostać wywołane, gdy składnik ma fokus i jest zasadniczo używane do registerKeyboardAction
static int WHEN_ANCESTOR_OF_FOCUSED_COMPONENT Stała ta jest używana w sytuacji skupionego komponentu. Służy do registerKeyboardAction, co oznacza, że ​​polecenie zostanie wywołane, gdy sam jest elementem skupionym lub element odbierający jest przodkiem elementu skupionego.
static int WHEN_IN_FOCUSED_WINDOW Ta stała jest zwykle używana dla registerKeyboardAction i oznacza, że ​​polecenie zostanie wywołane, jeśli element odbierający jest obecny w aktualnie aktywnym oknie lub sam jest elementem aktywowanym.
chroniony ComponentUI ui Ten komponent jest delegatem wyglądu i działania
chroniony EventListenerList listenerList Ta klasa komponentów służy do przechowywania pełnej listy detektorów zdarzeń.
chroniony AccessibleContext dostępnyKontekst Z tym komponentem JC jest powiązany AccessibleContext.

Metody JComponent w Javie

Poniżej podano niektóre z najczęściej używanych metod JComponent w Javie:

S.no. Nazwa metody Rodzaj modyfikatora Opis
1. setBackground (Color bg) unieważnić Ta metoda służy do ustawienia tła tego komponentu
2) setForeground (kolor fg) unieważnić Ta metoda służy do ustawienia pierwszego planu tego komponentu
3) setMaximumSize (wymiar maxSize) unieważnić Ta metoda służy do ustawienia maksymalnego rozmiaru tego komponentu na maksymalny rozmiar do podanej wartości.
4 setMinimumSize (Wymiar minSize) unieważnić Ta metoda służy do ustawienia minimalnego rozmiaru tego komponentu na podaną wartość.
5 addAncestorListener (detektor AncestorListener) unieważnić Ta metoda służy do dodawania AncestorListener, aby otrzymywał wszystkie AncestorEvent, gdy którykolwiek z jego przodków zostanie przeniesiony lub stanie się widoczny / niewidoczny
6. firePropertyChange (String właściwośćName, boolean oldValue, boolean newValue) boolean Ta metoda służy do zgłaszania powiązanej zmiany właściwości dla właściwości boolowskich
7 getAccessibleContext () AccessibleContext Ta metoda służy do uzyskania kontekstu Accessible, który jest powiązany z JComponent.
8 getAncestorListeners () AncestorListener () Ta metoda służy do zwracania tablicy wszystkich detektorów przodków zarejestrowanych w tym komponencie.
9 getToolTipText () Strunowy Ta metoda służy do zwracania ciągu podpowiedzi ustawionego przez metodę setToolTipText ()
10 getWidth () int Ta metoda służy do uzyskania bieżącej szerokości komponentu.
11 getTopLevelAncestor () Pojemnik Ta metoda zwraca przodka najwyższego poziomu tego komponentu. Jeśli składnik nie został jeszcze dodany do żadnego kontenera, zwraca wartość null.
12 isRequestFocusEnabled () boolean Ta metoda zwraca wartość true, jeśli ten Jcomponent powinien zostać zogniskowany, lub false, jeśli nie.
13 processMouseEvent (MouseEvent e) chroniona pustka Ta metoda przetwarza wszelkie zdarzenia myszy występujące w tym komponencie, wysyłając je do dowolnych zarejestrowanych obiektów MouseListener.
14 isLightweightComponent (składnik c) statyczny boolean Ta metoda zwraca wartość true, jeśli ten komponent jest lekki, a false, jeśli nie.
15. getActionForKeyStroke (KeyStroke, naciśnięcie klawisza) ActionListener Ta metoda zasadniczo zwraca obiekt, który wykona akcję dla danego naciśnięcia klawisza.
16 getAccessibleContext () AccessibleContext Ta metoda służy do uzyskania dostępnego kontekstu związanego z tym komponentem JC
17 getBorder () Granica Ta metoda zwraca granicę tego komponentu i zerową, jeśli nie ma granicy ustawionej dla komponentu

Program do implementacji JComponent w Javie:

Poniższy program implementuje JComponent w Javie:

Kod:

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

Dane wyjściowe: Wykonanie powyższego programu skutkuje niżej wymienionymi danymi wyjściowymi.

Wniosek

Powyższy opis JComponent jasno wyjaśnia, co JComponent to oraz różne metody i modyfikatory stosowane w JComponent. JComponent jest jednym z najważniejszych tematów dotyczących pracy z grafiką. Ponieważ istnieje wiele metod używanych przez JComponent do różnych celów. Dlatego przed ich użyciem programista powinien dokładnie to zrozumieć.

Polecane artykuły

Jest to przewodnik po JComponent w Javie. Tutaj omawiamy typy i zmodyfikowane, metody i implementację programową JComponent w Javie. Możesz również przejrzeć nasze inne powiązane artykuły, aby dowiedzieć się więcej-

  1. JTextField w Javie
  2. Diagram komponentów UML
  3. Komponenty Hadoop
  4. JDialog w Javie
  5. Kompletny przewodnik po JFrame w Javie
  6. JTable w Javie | Konstruktory, metody w Javie