Introduktion til JComponent i Java
Som vi alle er opmærksomme på, at næsten alle Swing-komponenter som JButton, JPanel, JTable osv. Er de grundlæggende byggesten, der bruges i udviklingen af Swing-applikationen. De udvider JComponent-klassen, som udvider Container-klassen, som igen forlænger Java-klassens Container-klasse. Svingkomponenter bærer AWT-funktionaliteten også med sig selv, når de udvider beholderklassen. På denne måde følges hierarkiet for svingklasserne. Komponenter på topniveau som JDialog og JFrame arver ikke JComponenten på grund af at være barnet til topniveaucontainer.
Syntaks:
Der er ingen sådan syntaks for JComponent i Java. Der er kun en standardkonstruktør af JComponent, som enhver klasse kan arve. Nedenfor er vist grundlæggende erklæring fra JComponent:
public abstract class JComponent
extends Container
implements Serializable
JContainer bruges på den måde, der er nævnt nedenfor:
public class Myclass extends JComponent(
public void method()
( )
)
Typer og modifikatorer, der bruges til JComponent i Java
Under tabellen viser de typer og modifikatorer, der bruges til JComponent i Java:
Modifikator eller type | Mark | Beskrivelse |
statisk streng | TOOL_TIP_TEXT_KEY | Det er også kendt som "value tip", "flyover label" og bruges til at vises, når markøren er over komponenten |
statisk int | UNDEFINED_CONDITION | Denne konstante bruges dybest set af nogle af API'erne for at nævne de situationer, hvor der ikke er specificeret / defineret nogen betingelse |
statisk int | WHEN_FOCUSSED | Denne konstante betyder, at kommandoen skal aktiveres, når komponenten har fokus og dybest set bruges til registerKeyboardAction |
statisk int | WHEN_ANCESTOR_OF_FOCUSED_COMPONENT | Denne konstante bruges i situationen for den fokuserede komponent. Det bruges til registerKeyboardAction, hvilket betyder, at kommandoen aktiveres, når det i sig selv er en fokuseret komponent, eller den modtagende komponent er stamfar til den fokuserede komponent. |
statisk int | WHEN_IN_FOCUSED_WINDOW | Denne konstant bruges generelt til registerKeyboardAction og betyder, at kommandoen aktiveres, hvis den modtagende komponent er til stede i det aktuelt fokuserede vindue eller i sig selv er en fokuseret komponent. |
beskyttet ComponentUI | ui | Denne komponent er delegeret for udseendet og fornemmelsen |
beskyttet EventListenerList | listenerList | Denne komponentklasse bruges til at holde en komplet liste over begivenhedslyttere. |
beskyttet AccessibleContext | accessibleContext | Med denne JComponent er AccessibleContext tilknyttet. |
Metoder til JComponent i Java
Nedenfor er vist nogle af de mest anvendte metoder til JComponent i Java:
S.No. | Metode Navn | Ændringstype | Beskrivelse |
1. | sætBackground (farve bg) | ugyldig | Denne metode bruges til at indstille baggrunden for denne komponent |
2. | setForeground (farve fg) | ugyldig | Denne metode bruges til at indstille forgrunden til denne komponent |
3. | setMaximumSize (Dimension maxSize) | ugyldig | Denne metode bruges til at indstille den maksimale størrelse af denne komponent til den maksimale størrelse til den angivne værdi. |
4. | setMinimumSize (Dimension minSize) | ugyldig | Denne metode bruges til at indstille minimumsstørrelsen på denne komponent til den angivne værdi. |
5. | addAncestorListener (AncestorListener lytteren) | ugyldig | Denne metode bruges til at tilføje en AncestorListener, så den modtager alle AncestorEvents, når nogen af dens forfædre flyttes eller synliggøres / usynlig |
6. | firePropertyChange (strengegenskabsnavn, boolsk gammel værdi, boolsk ny værdi) | boolean | Denne metode bruges til at rapportere en bundet egenskabsændring for boolske egenskaber |
7. | getAccessibleContext () | AccessibleContext | Denne metode bruges til at få den tilgængelige kontekst, der er forbundet med JComponent. |
8. | getAncestorListeners () | AncestorListener () | Denne metode bruges til at returnere en matrix af alle forfædres lyttere, der er registreret med denne komponent. |
9. | getToolTipText () | Snor | Denne metode bruges til at returnere strengen for den værktøjstip, der er indstillet af metoden setToolTipText () |
10. | getWidth () | int | Denne metode bruges til at få komponentens aktuelle bredde. |
11. | getTopLevelAncestor () | Beholder | Denne metode returnerer den øverste stamfar til denne komponent. Hvis komponenten endnu ikke er føjet til nogen beholder, returnerer den nul. |
12. | isRequestFocusEnabled () | boolean | Denne metode returnerer sandt, hvis denne Jcomponent skulle få fokus og falsk, hvis ikke. |
13. | processMouseEvent (MouseEvent e) | beskyttet tomrum | Denne metode behandler alle musebegivenheder, der forekommer på denne komponent ved at sende dem til eventuelle registrerede MouseListener-objekter. |
14. | isLightweightComponent (komponent c) | statisk boolsk | Denne metode returnerer sandt, hvis denne komponent er en letvægtskomponent og falsk, hvis ikke. |
15. | getActionForKeyStroke (KeyStroke, keystroke) | ActionListener | Denne metode returnerer dybest set det objekt, der udfører handlingen for det givne tastetryk. |
16. | getAccessibleContext () | AccessibleContext | Denne metode bruges til at få den tilgængelige kontekst, der er knyttet til denne JComponent |
17. | getBorder () | Grænse | Denne metode returnerer grænsen til denne komponent og null, hvis der ikke er nogen grænse, der indstiller komponenten |
Program til implementering af JComponent i Java:
Nedenstående program implementerer JComponent i Java:
Kode:
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);
)
)
Output: Udførelse af ovenstående program resulterer i den nævnte output.
Konklusion
Ovenstående beskrivelse af JComponent forklarer klart, hvad JComponent det er, og de forskellige metoder og modifikatorer, der bruges i JComponent. JComponent er et af de vigtigste emner, når det gælder arbejde med grafik. Da der er mange metoder, som JComponent bruger til forskellige formål. Så før du bruger dem, skal det forstås grundigt af programmereren.
Anbefalede artikler
Dette er en guide til JComponent i Java. Her diskuterer vi typer og modificerede metoder og programimplementeringer af JComponent i Java. Du kan også gennemgå vores andre relaterede artikler for at lære mere-
- JTextField i Java
- UML-komponentdiagram
- Hadoop-komponenter
- JDialog i Java
- Komplet guide til JFrame i Java
- JTable i Java | Konstruktører, metoder i Java