Въведение в JComponent в Java

Тъй като всички ние сме наясно с факта, че почти всички компоненти на Swing като JButton, JPanel, JTable и т.н. са основните градивни елементи, които се използват при разработването на приложението Swing. Те разширяват класа JComponent, което разширява класа Container, което от своя страна разширява класа Container на Java. Swing компонентите носят функционалността AWT също със себе си, тъй като те разширяват класа Container. По този начин се следва йерархията на класовете Swing. Компонентите от най-високо ниво като JDialog и JFrame не наследяват JComponent, защото е дете на контейнер от най-високо ниво.

Синтаксис:

В Java няма такъв синтаксис на JComponent. Има само един конструктор по подразбиране на JComponent, който всеки клас може да наследи. По-долу е дадена основната декларация на JComponent:

public abstract class JComponent
extends Container
implements Serializable

JContainer се използва по споменатия по-долу начин:

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

Типове и модификатори, използвани за JComponent в Java

По-долу в таблицата са показани типовете и модификаторите, използвани за JComponent в Java:

Модификатор или Тип поле описание
статична струна TOOL_TIP_TEXT_KEY Известен е също като „value tip“, „flyover label“ и се използва за показване, когато курсорът е над компонента
статичен вх UNDEFINED_CONDITION Тази константа се използва основно от някои от API-тата, за да се споменат ситуациите, когато не е посочено / дефинирано условие
статичен вх WHEN_FOCUSSED Тази константа означава, че командата трябва да бъде извикана, когато компонентът има фокус и основно се използва за registerKeyboardAction
статичен вх WHEN_ANCESTOR_OF_FOCUSED_COMPONENT Тази константа се използва в ситуацията на фокусирания компонент. Използва се за registerKeyboardAction, което означава, че командата ще бъде извикана, когато той сам е фокусиран компонент или получаващият компонент е прародител на фокусирания компонент.
статичен вх WHEN_IN_FOCUSED_WINDOW Тази константа обикновено се използва за registerKeyboardAction и означава, че командата ще бъде извикана, ако получаващият компонент присъства в текущо фокусирания прозорец или самият той е фокусиран компонент.
защитен компонентUI UI Този компонент е делегатът на външния вид и усещането
защитен EventListenerList listenerList Този клас компоненти се използва за съхраняване на пълен списък на слушателите на събития.
защитен AccessibleContext accessibleContext С този JComponent се свързва AccessibleContext.

Методи на JComponent в Java

По-долу са дадени някои от най-често използваните методи на JComponent в Java:

S.no. Име на метода Тип модификатор описание
1. setBackground (Цвят bg) празнота Този метод се използва за задаване на фона на този компонент
2. setForeground (Цвят fg) празнота Този метод се използва за задаване на преден план на този компонент
3. setMaximumSize (Dimension maxSize) празнота Този метод се използва за определяне на максималния размер на този компонент на максималния размер до дадената стойност.
4. setMinimumSize (Dimension minSize) празнота Този метод се използва за определяне на минималния размер на този компонент на дадената стойност.
5. addAncestorListener (слушател на AncestorListener) празнота Този метод се използва за добавяне на AncestorListener, така че той да получава всички AncestorEvents, когато някой от неговите предци бъде преместен или направен видим / невидим
6. firePropertyChange (String propertyName, boolean oldValue, boolean newValue) булева Този метод се използва за отчитане на обвързана промяна на свойствата за булеви свойства
7. getAccessibleContext () AccessibleContext Този метод се използва за получаване на достъпния контекст, който е свързан с JComponent.
8. getAncestorListeners () AncestorListener () Този метод се използва за връщане на масив от всички слушатели на предци, които са регистрирани с този компонент.
9. getToolTipText () низ Този метод се използва за връщане на низ на подсказката, която е зададена от метода setToolTipText ()
10. getWidth () инт Този метод се използва за получаване на текущата ширина на компонента.
11. getTopLevelAncestor () Контейнер Този метод връща прародителя от най-високо ниво на този компонент. Ако компонентът все още не е добавен към който и да е контейнер, той връща нула.
12. isRequestFocusEnabled () булева Този метод връща вярно, ако този Jcomponent трябва да получи фокус и false ако не.
13. processMouseEvent (MouseEvent e) защитена празнота Този метод обработва всички събития на мишката на този компонент, като ги изпраща до всички регистрирани обекти на MouseListener.
14. isLightweightComponent (Компонент c) статичен булев Този метод връща вярно, ако този компонент е лек компонент, а неверният, ако не.
15. getActionForKeyStroke (KeyStroke, натискане на клавиш) ActionListener Този метод основно връща обекта, който ще извърши действието за дадения натиск на клавиша.
16. getAccessibleContext () AccessibleContext Този метод се използва за получаване на достъпния контекст, свързан с този JComponent
17. getBorder () граница Този метод връща границата на този компонент и null, ако няма границата, зададена на компонента

Програма за внедряване на JComponent в Java:

По-долу програмата реализира JComponent на Java:

Код:

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

Изход: Изпълнението на горната програма води до споменатия изход.

заключение

Горното описание на JComponent ясно обяснява какво представлява JComponent и различните методи и модификатори, използвани в JComponent. JComponent е една от най-важните теми, когато става въпрос за работа с графика. Тъй като има много методи, използвани от JComponent, използвани за различни цели. Така че преди да ги използвате, той трябва да бъде разбран задълбочено от програмиста.

Препоръчителни статии

Това е ръководство за JComponent в Java. Тук обсъждаме Видове и модифицирани методи и програмна реализация на JComponent в Java. Можете също да разгледате и другите ни свързани статии, за да научите повече-

  1. JTextField в Java
  2. Схема на UML компонент
  3. Компоненти на Hadoop
  4. JDialog на Java
  5. Пълно ръководство за JFrame на Java
  6. JTable в Java | Конструктори, методи в Java