Inleiding tot JFrame in Java

JFrame is een Java-klasse die wordt uitgebreid met de Frame-klasse van Java. JFrame wordt behandeld als het hoofdvenster. In JFrame kunnen verschillende elementen zoals labels, tekstvelden en knoppen worden toegevoegd. Deze elementen op JFrame creëren een grafische gebruikersinterface.

JFrame wordt ook wel Swing top-level container genoemd. Swing verwijst naar de GUI widget Toolkit voor het maken van applicaties in JAVA. Swing is lichtgewicht en onafhankelijk van de plaatvorm. JFrame-klasse in de toepassing kan op de volgende manier worden gemaakt

public class JFrame verlengt Frame implementeert WindowConstants, Accessible, RootPaneContainer

JFrame Constructor

JFrame Constructor & zijn beschrijvingen worden hieronder gegeven.

  1. JFrame () - JFrame () is een JFrame-klasseconstructor die een nieuw frame maakt. Standaard blijft het onzichtbaar.
  2. JFrame (String-titel, GraphicsConfiguration gc) - Deze constructor maakt een JFrame in de opgegeven grafische configuratie & met de opgegeven titel zoals in parameter.
  3. JFrame (GraphicsConfiguration gc) - Deze constructor maakt een JFrame in de opgegeven grafische configuratie zoals deze zich in de parameter bevindt.
  4. JFrame (String-titel) - Deze constructor maakt een JFrame met de opgegeven titel zoals in parameter.

JFrame-methoden

De JFrame-klasse biedt enkele methoden die een belangrijke rol spelen bij het werken met JFrame.

1. AccessibleContext getAccessibleContext () - Deze methode haalt de toegankelijke context op die aan het JFrame gekoppeld blijft.

2. Container getContentPane () - Deze methode maakt het contentPane-object van het JFrame.

3. Component getGlassPane () - Deze methode maakt het glassPane-object voor JFrame.

4. int getDefaultCloseOperation () - Wanneer de gebruiker op de knop Sluiten op dit frame klikt, retourneert deze methode de bewerking.

5. JMenuBar getJMenuBar () - Menubalkset gemaakt op het frame met behulp van deze methode.

6. JLayeredPane getLayeredPane () - Object LayeredPane wordt door deze methode geretourneerd.

7. JRootPane getRootPane () - Het rootPane-object wordt door deze methode geretourneerd.

Onderstaande methoden (8 - 15) toegangsmodificator 'beschermd' moet aan het begin van de methode worden toegevoegd -

8. addImpl (Componentcomponent, objectbeperkingen, int index) - Deze methode voegt het opgegeven onderliggende element voor dit frame toe.

9. JRootPane createRootPane () - Maak het standaard rootPane & aangeroepen door de constructor.

10. void frameInit () - Het wordt door de constructor aangeroepen om het JFrame te initialiseren.

11. boolean isRootPaneCheckingEnabled () - Aanroepen om toe te voegen & setLayout worden doorgestuurd naar contentPane of niet, worden met deze methode gevalideerd

12. String paramString () - Deze methode retourneert JFrame in de vorm van String.

13. void processWindowEvent (WindowEvent e) - Met deze methode wordt de window-gebeurtenis op het vensteronderdeel uitgevoerd.

14. void setRootPane (JRootPane root) - Met deze methode wordt de eigenschap rootPane ingesteld.

15. void setRootPaneCheckingEnabled (boolean ingeschakeld) - Hiermee worden oproepen ingesteld om toe te voegen en setLayout worden doorgestuurd naar het contentPane of niet.

16. statische boolean isDefaultLookAndFeelDecorated () - Als de nieuw gemaakte JFrames hun vensterdecoratie hebben zoals wordt bepaald door de huidige look and feel, retourneert deze methode true.

17. TransferHandler getTransferHandler () - Deze methode haalt de eigenschap transferHandler op.

18. void remove (Component comp) - Voor het verwijderen van de specifieke component uit de JFrame-container kunnen we deze methode gebruiken.

19. ongeldig opnieuw schilderen (lange tijd, int x, int y, int breedte, int hoogte) - Deze methode wordt gebruikt om de specifieke rechthoek binnen het onderdeel in enkele milliseconden opnieuw te schilderen.

20. void setContentPane (Container contentPane) - Eigenschap van het contentPane wordt ingesteld door deze methode.

21. void setDefaultCloseOperation (int operatie) - Standaardbewerking ingesteld door deze methode die zal plaatsvinden wanneer de gebruiker de sluitbewerking voor een frame start.

22. void setGlassPane (Component glassPane) - de eigenschap glassPane kan met deze methode worden ingesteld.

23. void setIconImage (Image img) - Pictogram voor het raamkozijn kan met deze methode worden ingesteld.

24. void setJMenuBar (JMenuBar menubalk) - Menubalk voor JFrame kan met deze methode worden ingesteld.

25. void setLayeredPane (JLayeredPane jlPane) - LayeredPane-eigenschap wordt ingesteld met deze methode.

26. void setLayout (LayoutManager manager) - LayoutManager wordt gemaakt met behulp van deze methode.

27. void setTransferHandler (TransferHandler newHandler) - Deze stelt de eigenschap in verband met de transferHandler in. Deze creëert een mechanisme om de gegevensoverdracht voor de component te ondersteunen.

28. void update (Graphics g) - Deze roept de verf op om de frames en elementen te kleuren

Voorbeelden van JFrame in Java

Hier zijn de volgende voorbeelden die hieronder worden genoemd

Voorbeeld 1

Zie het onderstaande voorbeeld

import javax.swing.*;
public class demoJFrame extends JFrame(
JFrame frame;
demoJFrame()(
setTitle("A Sample JFrame Window");
JButton button = new JButton("click");
button.setBounds(100, 100, 115, 55);
add(button);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 300);
setLayout(null);
setVisible(true);
)
public static void main(String() args)(
new demoJFrame();
)
)

In het hierboven gegeven voorbeeld wordt de swingbibliotheek geïmporteerd om verschillende klassen te bevatten om met het Frame & evenementen te werken. In de onderstaande schermafbeelding wordt een frame gemaakt met behulp van JFrame-klassen van swingbibliotheek.

Voorbeeld 2

In dit voorbeeld worden meerdere methoden van JFrame, Layout & Events-klassen gebruikt om formulieren in het frame te maken.

import javax.swing.*;
import java.awt.event.*;
import java.awt.FlowLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
public class JFrameDemo(
public static void main(String() args)(
// Create frame with title Registration Demo
JFrame frame= new JFrame();
frame.setTitle("JFrame Based Contact Form");
JPanel mainPanel = new JPanel();
mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.Y_AXIS));
JPanel headingPanel = new JPanel();
JLabel headingLabel = new JLabel("Contact Us Panel");
headingPanel.add(headingLabel);
JPanel panel = new JPanel(new GridBagLayout());
// Constraints for the layout
GridBagConstraints constr = new GridBagConstraints();
constr.insets = new Insets(5, 5, 5, 5);
constr.anchor = GridBagConstraints.WEST;
// Setting initial grid values to 0, 0
constr.gridx=0;
constr.gridy=0;
JLabel nameLabel = new JLabel("Enter your name :");
JLabel emailLabel = new JLabel("Enter your email :");
JLabel phoneLabel = new JLabel("Enter your phone :");
JLabel msgLabel = new JLabel("Message :");
JTextField nameInput = new JTextField(20);
JTextField emailInput = new JTextField(20);
JTextField phoneInput = new JTextField(20);
JTextArea textArea = new JTextArea(5, 20);
panel.add(nameLabel, constr);
constr.gridx=1;
panel.add(nameInput, constr);
constr.gridx=0; constr.gridy=1;
panel.add(emailLabel, constr);
constr.gridx=1;
panel.add(emailInput, constr);
constr.gridx=0; constr.gridy=2;
panel.add(phoneLabel, constr);
constr.gridx=1;
panel.add(phoneInput, constr);
constr.gridx=0; constr.gridy=3;
panel.add(msgLabel, constr);
constr.gridx=1;
panel.add(textArea, constr);
constr.gridx=0; constr.gridy=4;
constr.gridwidth = 2;
constr.anchor = GridBagConstraints.CENTER;
// Button with text "Register"
JButton button = new JButton("Submit");
// add a listener to button
button.addActionListener(new ActionListener()
(
public void actionPerformed(ActionEvent e)
(
headingLabel.setText("Thanks for Contacting us. We'll get back to you shortly.");
nameInput.setText("");
emailInput.setText("");
phoneInput.setText("");
textArea.setText("");
)
));
panel.add(button, constr);
mainPanel.add(headingPanel);
mainPanel.add(panel);
frame.add(mainPanel);
frame.pack();
frame.setSize(500, 500);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
)
)

In het bovenstaande voorbeeld wordt een raamkozijn gemaakt met JFrame. en elementen maken met behulp van de JPanel () -methoden. andere bibliotheken worden gebruikt voor layout & evenementen. De volgende zijn de screenshot toegevoegd na het compileren en uitvoeren van de Java-code.

Conclusie - JFrame in Java

JFrame is de klasse van het swingpakket dat voornamelijk werd gebruikt om het JFrame te maken. We kunnen zeggen dat het JFrame-venster kan worden gemaakt door de JFrame-klasse te instantiëren. De meeste nieuwe GUI Java-codebases gebruiken JavaFX, de swingvervanging in de nieuwste versie van Java. In de komende dagen gaan programmeurs over naar JavaFX vanwege de nieuwste versie van Java-bibliotheken en uitgebreide functies.

Aanbevolen artikelen

Dit is een handleiding voor JFrame in Java. Hier bespreken we de constructeurs en methoden van JFrame samen met de voorbeelden. U kunt ook de volgende artikelen bekijken voor meer informatie -

  1. 3D-arrays in Java
  2. JScrollPane in Java
  3. JDialog in Java
  4. JTextField in Java
  5. 3D-arrays in C ++
  6. JavaFX-indelingen
  7. JLabel in Java
  8. Stroomschema in Java
  9. Typen en hoe JavaFx-grafieken te maken?
  10. Hoe tekst in te voeren in JavaFX TextField?
  11. Top 15 methoden van HBox in JavaFX
  12. Volledige gids voor JLayeredPane met voorbeelden