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-
- JTextField w Javie
- Diagram komponentów UML
- Komponenty Hadoop
- JDialog w Javie
- Kompletny przewodnik po JFrame w Javie
- JTable w Javie | Konstruktory, metody w Javie