Swing In Java: saber crear GUI amb exemples

: guanyeu el concepte de swing a Java amb la jerarquia de classes de swing i el gestor de disseny amb una demostració pràctica de l'aplicació GUI.

Swing in Java forma part de la classe de base Java, que és lleugera i independent de la plataforma. S'utilitza per crear aplicacions basades en finestres. Inclou components com el botó, la barra de desplaçament, el camp de text, etc. Unir tots aquests components fa una interfície gràfica d'usuari. En aquest article, revisarem els conceptes implicats en el procés de creació d'aplicacions mitjançant swing in . A continuació es detallen els conceptes comentats en aquest article:



Què és Swing In Java?

Swing in Java és un joc d’eines GUI lleuger que té una gran varietat de ginys per crear aplicacions basades en finestres optimitzades. Forma part del JFC (Java Foundation Classes). Està construït a sobre de l'API AWT i està completament escrit . És independent de la plataforma a diferència d’AWT i té components lleugers.



Es fa més fàcil construir aplicacions, ja que ja tenim components de la GUI, com ara botó, casella de selecció, etc. Això és útil perquè no hem de començar des de zero.

Classe de contenidors

Cap que conté altres components s’anomena classe de contenidors. Per crear aplicacions GUI, cal una classe de contenidors com a mínim.



A continuació es detallen els tres tipus de classes de contenidors:

  1. Tauler: s'utilitza per organitzar components en una finestra

  2. Marc: una finestra que funciona completament amb icones i títols



  3. Diàleg: és com una finestra emergent però no és completament funcional com el marc

Diferència entre AWT i Swing

AWT SWING
  • Depenent de la plataforma
  • Plataforma independent
  • No segueix MVC
  • Segueix MVC
  • Components menors
  • Components més potents
  • No admet l'aparença connectable
  • Admet l’aspecte connectable
  • Pesat
  • Lleuger

Jerarquia de classes de Java Swing

jerarquia-swing a java-edureka

Explicació : Tots els components en swing com JButton, JComboBox, JList, JLabel s'hereten de la classe JComponent que es pot afegir a les classes de contenidors. Els contenidors són les finestres com el quadre i els quadres de diàleg. Els components bàsics basculants són els components bàsics de qualsevol aplicació gui. Mètodes com setLayout anul·len el disseny predeterminat de cada contenidor. Els contenidors com JFrame i JDialog només poden afegir-hi un component. A continuació es mostren alguns components amb exemples per entendre com els podem utilitzar.

Classe JButton

S'utilitza per crear un botó etiquetat. Si utilitzeu ActionListener, es produirà alguna acció quan es prem el botó. Hereta la classe AbstractButton i és independent de la plataforma.

Exemple:

import javax.swing. * public class example {public static void main (String args []) {JFrame a = new JFrame ('example') JButton b = new JButton ('click me') b.setBounds (40,90, 85,20) a.add (b) a.setSize (300.300) a.setLayout (nul) a.setVisible (true)}}

Sortida:

gestió d'excepcions en procediment emmagatzemat oracle

Classe JTextField

Hereta la classe JTextComponent i s’utilitza per permetre l’edició de text d’una sola línia.

Exemple:

import javax.swing. * public class example {public static void main (String args []) {JFrame a = new JFrame ('example') JTextField b = new JTextField ('edureka') b.setBounds (50,100,200,30) a .add (b) a.setSize (300.300) a.setLayout (nul) a.setVisible (true)}}

Sortida:

Classe JScrollBar

S'utilitza per afegir barra de desplaçament, tant horitzontal com vertical.

Exemple:

import javax.swing. * exemple de classe {exemple () {JFrame a = JFrame nou ('exemple') JScrollBar b = new JScrollBar () b.setBounds (90,90,40,90) a.add (b) a. setSize (300.300) a.setLayout (nul) a.setVisible (true)} public static void main (String args []) {nou exemple ()}}

Sortida:

Classe JPanel

Hereta la classe JComponent i proporciona espai per a una aplicació que pot connectar qualsevol altre component.

import java.awt. * import javax.swing. * public class Exemple {Exemple () {JFrame a = new JFrame ('exemple') JPanel p = new JPanel () p.setBounds (40,70,200,200) JButton b = new JButton ('feu clic a mi') b.setBounds (60,50,80,40) p.add (b) a.add (p) a.setSize (400,400) a.setLayout (nul) a.setVisible (true)} públic static void main (String args []) {nou exemple ()}}

Sortida:

JMenu Clas s

Hereta la classe JMenuItem i és un component de menú desplegable que es mostra a la barra de menú.

import javax.swing. * class Exemple {menú JMenuItem JMenuIt a1, a2 Example () {JFrame a = new JFrame ('Example') menu = new JMenu ('options') JMenuBar m1 = new JMenuBar () a1 = new JMenuItem ( 'exemple') a2 = nou JMenuItem ('exemple1') menu.add (a1) menu.add (a2) m1.add (menú) a.setJMenuBar (m1) a.setSize (400.400) a.setLayout (nul) a .setVisible (true)} public static void main (String args []) {nou exemple ()}}

Sortida:

el que és xef a devops

Classe JList

Hereta la classe JComponent, l'objecte de la classe JList representa una llista d'elements de text.

import javax.swing. * public class Exemple {Exemple () {JFrame a = new JFrame ('exemple') DefaultListModel l = new DefaultListModel () l.addElement ('primer element') l.addElement ('segon element') JList b = new JList (l) b.setBounds (100.100,75,75) a.add (b) a.setSize (400.400) a.setVisible (true) a.setLayout (null)} public static void main (String args [ ]) {nou exemple ()}}

Sortida:

Classe JLabel

S'utilitza per col·locar text en un contenidor. També hereta la classe JComponent.

import javax.swing. * public class Exemple {public static void main (String args []) {JFrame a = new JFrame ('exemple') JLabel b1 b1 = new JLabel ('edureka') b1.setBounds (40,40, 90,20) a.add (b1) a.setSize (400.400) a.setLayout (nul) a.setVisible (true)}}

Sortida:

Classe JComboBox

Hereta la classe JComponent i s'utilitza per mostrar el menú emergent d'opcions.

import javax.swing. * public class Exemple {JFrame a Example () {a = new JFrame ('example') string courses [] = {'core java', 'advance java', 'java servlet'} JComboBox c = new JComboBox (cursos) c.setBounds (40,40,90,20) a.add (c) a.setSize (400.400) a.setLayout (nul) a.setVisible (true)} public static void main (String args [] ) {nou exemple ()}}

Sortida:

Gestor de maquetació

Per disposar els components dins d’un contenidor utilitzem el gestor de disposicions. A continuació es detallen diversos gestors de disseny:

  1. Disseny de la vora

  2. Disseny de flux

    com escriure un mètode d’anul·lació a Java
  3. Disseny de GridBag

Disseny de vores

El gestor de disseny predeterminat per a cada JFrame és BorderLayout. Col·loca els components en un màxim de cinc llocs, a la part superior, inferior, esquerra, dreta i central.

Disseny de flux

FlowLayout simplement col·loca els components seguits un darrere l’altre, és el gestor de disseny predeterminat per a cada JPanel.

Disseny de GridBag

GridBagLayout col·loca els components en una quadrícula que permet que els components abastin més d’una cel·la.

Exemple: Frame de xat

import javax.swing. * import java.awt. * class Exemple {public static void main (String args []) {JFrame frame = new JFrame ('Chat Frame') frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) frame.setSize (400 , 400) JMenuBar ob = new JMenuBar () JMenu ob1 = new JMenu ('FILE') JMenu ob2 = new JMenu ('Help') ob.add (ob1) ob.add (ob2) JMenuItem m11 = new JMenuItem ('Open ') JMenuItem m22 = new JMenuItem (' Save as ') ob1.add (m11) ob1.add (m22) JPanel panel = new JPanel () // el tauler no és visible a la sortida JLabel label = new JLabel (' Enter Text ') JTextField tf = new JTextField (10) // accepta fins a 10 caràcters JButton send = new JButton (' Send ') JButton reset = new JButton (' Reset ') panel.add (label) // Components afegits mitjançant el panell Layout de flux .add (etiqueta) // Components afegits mitjançant el disseny de flux panel.add (tf) panel.add (enviar) panel.add (restablir) JTextArea ta = new JTextArea () frame.getContentPane (). add (BorderLayout.SOUTH, panel ) frame.getContentPane (). add (BorderLayout.NORTH, tf) frame.getContentPane (). add (Border Layout.CENTER, ta) frame.setVisible (true)}}

Aquest és un exemple senzill per crear una interfície gràfica d’usuari mitjançant swing a Java.

En aquest article hem comentat el swing a Java i la jerarquia de les classes de swing de Java. Amb tots els components que inclou el swing a Java, es fa més fàcil crear aplicacions GUI optimitzades. El llenguatge de programació Java és un llenguatge de programació estructurat i amb la creixent demanda esdevé extremadament important dominar tots els conceptes . Per iniciar el vostre aprenentatge i convertir-vos en un expert en programació Java, inscriviu-vos a Edureka’s .

Tens alguna pregunta? Si us plau, mencioneu-ho a la secció de comentaris d'aquest article de 'Swing In Java' i us respondrem el més aviat possible.