Svinge er et Java Foundation Classes [JFC]-bibliotek og en utvidelse av Abstract Window Toolkit [AWT]. Java Swing tilbyr mye forbedret funksjonalitet i forhold til AWT, nye komponenter, utvidede komponentfunksjoner og utmerket hendelseshåndtering med dra-og-slipp-støtte.
Introduksjon av Java Swing
Swing har omtrent fire ganger antallet User Interface [UI]-komponenter som AWT og er en del av standard Java-distribusjon. I henhold til dagens GUI-krav for applikasjoner er AWT en begrenset implementering, som ikke helt er i stand til å tilby komponentene som kreves for å utvikle komplekse GUI-er som kreves i moderne kommersielle applikasjoner. AWT-komponentsettet har ganske mange feil og tar opp mye systemressurser sammenlignet med tilsvarende Swing-ressurser. Netscape introduserte sitt Internet Foundation Classes [IFC]-bibliotek for bruk med Java. Klassene ble veldig populære blant programmerere som laget GUI-er for kommersielle applikasjoner.
- Swing er et sett med API (API-sett med klasser og grensesnitt)
- Swing er gitt for å designe grafiske brukergrensesnitt
- Swing er et utvidelsesbibliotek til AWT (Abstract Window Toolkit) 17:00 – 17:30
- Inkluderer nye og forbedrede komponenter som har forbedret utseendet og funksjonaliteten til GUI-er
- Swing kan brukes til å bygge (utvikle) frittstående swing GUI-apper som servlets og applets
- Den bruker modell/visningsdesignarkitektur.
- Swing er mer bærbar og mer fleksibel enn AWT, Swing er bygget på toppen av AWT.
- Swing er helt skrevet i Java.
- Java Swing-komponenter er plattformuavhengige, og Swing-komponentene er lette.
- Swing Støtter et pluggbart utseende og følelse og Swing gir kraftigere komponenter.
- slik som tabeller, lister, rullepaneler, fargevelger, fanefelt, etc.
- Videre sving følger MVC.
Forskjellen mellom Java Swing og Java AWT
Det er visse punkter der Java Swing er annerledes enn Java AWT som nevnt nedenfor:
| Java AWT | Java Swing hvordan sette sammen strenger i java |
|---|---|
| Java AWT er et API for å utvikle GUI-applikasjoner i Java. | Swing er en del av Java Foundation Classes og brukes til å lage ulike applikasjoner. |
| Komponenter i AWT er tunge. | Komponentene i Java Swing er lette. |
| Komponenter er plattformavhengige. | Komponentene er plattformuavhengige. |
| Utførelsestid er mer enn Swing. | Utførelsestid er mindre enn AWT. |
| AWT-komponenter krever java.awt-pakke. | Swing-komponenter krever javax.swing-pakken. |
For å vite mer om emnet, se Java Swing vs Java AWT .
Hva er JFC?
JFC står for Java Foundation Classes. JFC er settet med GUI-komponenter som forenkler skrivebordsapplikasjoner. Mange programmerere tror at JFC og Swing er en og samme ting, men det er ikke slik. JFC inneholder Swing [En UI-komponentpakke] og ganske mange andre elementer:
- Klipp og lim: Utklippstavlestøtte.
- Tilgjengelighetsfunksjoner: Tar sikte på å utvikle GUIer for brukere med funksjonshemminger.
- Desktop Colors-funksjonene ble først introdusert i Java 1.1
- Java 2D: den har forbedret farger, bilder og tekststøtte.
Funksjoner av Swing Class
- Pluggbar utseende og følelse.
- Bruker MVC-arkitektur.
- Lette komponenter
- Plattformuavhengig
- Avanserte funksjoner som JTable, JTabbadPane, JScollPane, etc.
- Java er et plattformuavhengig språk og kjører på hvilken som helst klientmaskin, GUI-utseendet, eid og levert av et plattformspesifikt O/S, påvirker ganske enkelt ikke en applikasjons GUI konstruert ved hjelp av Swing-komponenter.
- Lette komponenter: Fra og med JDK 1.1, dens AWT-støttede lettvektskomponentutvikling. For at en komponent skal kvalifisere som lettvekt, må den ikke være avhengig av noen ikke-Java [O/s-baserte) systemklasser. Swing-komponenter har sin egen visning støttet av Javas utseende- og følelsesklasser.
- Pluggbar utseende og følelse: Denne funksjonen lar brukeren endre utseendet og følelsen til Swing-komponenter uten å starte en applikasjon på nytt. Swing-biblioteket støtter komponentenes utseende og følelse som forblir den samme på alle plattformer uansett hvor programmet kjører. Swing-biblioteket gir et API som gir reell fleksibilitet når det gjelder å bestemme utseendet og følelsen til GUI-en til en applikasjon
- Svært tilpassbar – Svingkontrollene kan tilpasses på en veldig enkel måte da det visuelle utseendet er uavhengig av intern representasjon.
- Rike kontroller – Swing gir et rikt sett med avanserte kontroller som Tree TabbedPane, glidebryter, fargevelger og bordkontroller.
Swing Class hierarki

MVC-tilkoblingen
- Generelt er en visuell komponent en sammensetning av tre forskjellige aspekter:
- Slik komponenten ser ut når den gjengis på skjermen.
- Måten slik at komponenten reagerer på brukeren.
- Tilstandsinformasjonen knyttet til komponenten.
- I løpet av årene har en komponent-arkitektur vist seg å være eksepsjonelt effektiv: - Model-View-Controller eller MVC for kort.
- I MVC-terminologi er modell tilsvarer tilstandsinformasjonen knyttet til komponenten.
- De utsikt bestemmer hvordan komponenten vises på skjermen, inkludert alle aspekter av visningen som påvirkes av modellens gjeldende tilstand.
- De kontrolleren bestemmer hvordan komponenten reagerer på brukeren.
De enkleste Swing-komponentene har funksjoner langt utover AWT-komponenter som følger:
- Svingknapper og etiketter kan vise bilder i stedet for eller i tillegg til tekst.
- Kantene rundt de fleste Swing-komponenter kan enkelt endres. For eksempel er det enkelt å sette en 1-piksel kant rundt utsiden av en Swing-etikett.
- Svingkomponenter trenger ikke være rektangulære. Knapper kan for eksempel være runde.
- Nå kan de nyeste selvhevdende teknologiene som skjermlesere enkelt hente informasjon fra Swing-komponenter. Eksempel: Et skjermleserverktøy kan enkelt fange opp teksten som vises på en Swing-knapp eller -etikett.
Eksempel på Java Swing-programmer
Eksempel 1: Utvikle et program ved å bruke etikett (swing) for å vise meldingen GFG WEB Site Klikk:
Java
knn algoritme
// Java program using label (swing)> // to display the message GFG WEB Site Click> import> java.io.*;> import> javax.swing.*;> // Main class> class> GFG {> >// Main driver method> >public> static> void> main(String[] args)> >{> >// Creating instance of JFrame> >JFrame frame =>new> JFrame();> >// Creating instance of JButton> >JButton button =>new> JButton(>' GFG WebSite Click'>);> >// x axis, y axis, width, height> >button.setBounds(>150>,>200>,>220>,>50>);> >// adding button in JFrame> >frame.add(button);> >// 400 width and 500 height> >frame.setSize(>500>,>600>);> >// using no layout managers> >frame.setLayout(>null>);> >// making the frame visible> >frame.setVisible(>true>);> >}> }> |
>
>
nummen logg
Produksjon:

Eksempel 2: Skriv et program for å lage tre knapper med teksten OK, SUBMIT, CANCEL.
Java
// Java program to create three buttons> // with caption OK, SUBMIT, CANCEL> import> java.awt.*;> class> button {> >button()> >{> >Frame f =>new> Frame();> >// Button 1 created> >// OK button> >Button b1 =>new> Button(>'OK'>);> >b1.setBounds(>100>,>50>,>50>,>50>);> >f.add(b1);> >// Button 2 created> >// Submit button> >Button b2 =>new> Button(>'SUBMIT'>);> >b2.setBounds(>100>,>101>,>50>,>50>);> >f.add(b2);> > >// Button 3 created> >// Cancel button> >Button b3 =>new> Button(>'CANCEL'>);> >b3.setBounds(>100>,>150>,>80>,>50>);> >f.add(b3);> >f.setSize(>500>,>500>);> >f.setLayout(>null>);> >f.setVisible(>true>);> >}> >public> static> void> main(String a[]) {>new> button(); }> }> |
>
>
Produksjon:

Eksempel 3: Avmerkingsboksen Program for å legge til i rammen
Java
govinda
// Java Swing Program to Add Checkbox> // in the Frame> import> java.awt.*;> // Driver Class> class> Lan {> >// Main Function> >Lan()> >{> >// Frame Created> >Frame f =>new> Frame();> >Label l1 =>new> Label(>'Select known Languages'>);> >l1.setBounds(>100>,>50>,>120>,>80>);> >f.add(l1);> >// CheckBox created> >Checkbox c2 =>new> Checkbox(>'Hindi'>);> >c2.setBounds(>100>,>150>,>50>,>50>);> >f.add(c2);> >// CheckBox created> >Checkbox c3 =>new> Checkbox(>'English'>);> >c3.setBounds(>100>,>200>,>80>,>50>);> >f.add(c3);> >// CheckBox created> >Checkbox c4 =>new> Checkbox(>'marathi'>);> >c4.setBounds(>100>,>250>,>80>,>50>);> >f.add(c4);> >f.setSize(>500>,>500>);> >f.setLayout(>null>);> >f.setVisible(>true>);> >}> >public> static> void> main(String ar[]) {>new> Lan(); }> }> |
>
>
Produksjon:

Komponenter i Swing Klasse oppgavens prosentandel
| Klasse | Beskrivelse |
|---|---|
| Komponent | En komponent er den abstrakte basisklassen for omtrent ikke-meny-brukergrensesnittkontrollene til Java SWING. Komponenter representerer et objekt med en grafisk representasjon. |
| Container | En container er en komponent som kan inneholde Java SWING-komponenter |
| JComponent | En JComponent er en basisklasse for alle swing UI-komponenter For å bruke en swing-komponent som arver fra JComponent, må komponenten være i et inneslutningshierarki hvis rot er en Java Swing-beholder på toppnivå. |
| JLabel | En JLabel er en objektkomponent for å plassere tekst i en beholder. |
| JButton | Denne klassen lager en merket knapp. |
| JColorChooser | En JColorChooser gir et panel med kontroller designet for å tillate brukeren å manipulere og velge en farge. |
| JCheckBox | En JCheckBox er en grafisk (GUI) komponent som kan være i enten på-(sann) eller av-(false) tilstand. |
| JRadioButton | JRadioButton-klassen er en grafisk (GUI) komponent som kan være i enten på-(sann) eller av-(false) tilstand. i gruppen |
| JList | En JList-komponent representerer brukeren med rullelisten over tekstelementer. |
| JComboBox | En JComboBox-komponent presenterer brukeren med en oppvisningsmeny med valg. |
| JTextField | Et JTextField-objekt er en tekstkomponent som gjør det mulig å redigere en enkelt tekstlinje. |
| JPasswordField | Et JPasswordField-objekt er en tekstkomponent spesialisert for passordinntasting. |
| JTextArea | Et JTextArea-objekt er en tekstkomponent som gjør det mulig å redigere flere tekstlinjer. |
| Imagelcon | En ImageIcon-kontroll er en implementering av Icon-grensesnittet som maler ikoner fra bilder |
| JScrollbar | En JScrollbar-kontroll representerer en rullefeltkomponent for å gjøre det mulig for brukere å velge fra områdeverdier. |
| JOptionPane | JOptionPane gir et sett med standard dialogbokser som ber brukere om en verdi eller noe. |
| JFileChooser | En JFileChooser it Controls representerer et dialogvindu der brukeren kan velge en fil. |
| JProgressBar | Når oppgaven skrider frem mot fullføring, viser fremdriftslinjen oppgaveprosenten ved fullføring. |
| JSlides | En JSlider denne klassen lar brukeren velge grafisk (GUI) ved å bruke en verdi ved å skyve en knott innenfor et avgrenset intervall. |
| JSpinner | En JSpinner denne klassen er en enkeltlinjeinngang hvor feltet som lar brukeren velge ved å bruke et tall eller en objektverdi fra en ordnet sekvens. |