logo

Uvod v Java Swing

Gugalnica je knjižnica Java Foundation Classes [JFC] in razširitev orodja Abstract Window Toolkit [AWT]. Java Swing ponuja veliko izboljšano funkcionalnost v primerjavi z AWT, nove komponente, razširjene funkcije komponent in odlično obravnavanje dogodkov s podporo za povleci in spusti.

Predstavitev Java Swing

Swing ima približno štirikrat več komponent uporabniškega vmesnika [UI] kot AWT in je del standardne distribucije Java. Glede na današnje zahteve GUI aplikacij je AWT omejena izvedba, ki ni povsem sposobna zagotoviti komponent, potrebnih za razvoj kompleksnih GUI, potrebnih v sodobnih komercialnih aplikacijah. Nabor komponent AWT ima kar nekaj napak in zavzema veliko sistemskih virov v primerjavi z enakovrednimi viri Swing. Netscape je predstavil svojo knjižnico Internet Foundation Classes [IFC] za uporabo z Javo. Njegovi razredi so postali zelo priljubljeni med programerji, ki ustvarjajo GUI za komercialne aplikacije.



  • Swing je niz API-jev (API- niz razredov in vmesnikov)
  • Swing je na voljo za oblikovanje grafičnih uporabniških vmesnikov
  • Swing je razširitvena knjižnica za AWT (Abstract Window Toolkit) 17:00 – 17:30
  • Vključuje nove in izboljšane komponente, ki izboljšujejo videz in funkcionalnost GUI-jev
  • Swing je mogoče uporabiti za gradnjo (razvoj) samostojnih aplikacij GUI swing kot Servlets in Applets
  • Uporablja arhitekturo oblikovanja modela/pogleda.
  • Swing je bolj prenosljiv in bolj prilagodljiv kot AWT, Swing je zgrajen na vrhu AWT.
  • Swing je v celoti napisan v Javi.
  • Komponente Java Swing so neodvisne od platforme, komponente Swing pa so lahke.
  • Swing podpira vtični videz in občutek, Swing pa zagotavlja zmogljivejše komponente.
  • kot so tabele, seznami, drsna podokna, izbirnik barv, podokno z zavihki itd.
  • Nadaljnji zamah sledi MVC.

Razlika med Java Swing in Java AWT

V nekaterih točkah se Java Swing razlikuje od Java AWT, kot je navedeno spodaj:

Java AWT

Java Swing



mysql spremeni vrsto stolpca

Java AWT je API za razvoj aplikacij GUI v Javi.

Swing je del Java Foundation Classes in se uporablja za ustvarjanje različnih aplikacij.

Komponente AWT so težke.



Komponente Java Swing so lahke.

Komponente so odvisne od platforme.

Komponente so neodvisne od platforme.

Čas izvedbe je več kot Swing.

Čas izvedbe je krajši od AWT.

Komponente AWT zahtevajo paket java.awt.

Komponente Swing zahtevajo paket javax.swing.

Če želite izvedeti več o temi, glejte Java Swing proti Java AWT .

Kaj je JFC?

JFC je kratica za Java Foundation Classes. JFC je niz komponent GUI, ki poenostavljajo namizne aplikacije. Mnogi programerji mislijo, da sta JFC in Swing ena in ista stvar, vendar ni tako. JFC vsebuje Swing [komponentni paket uporabniškega vmesnika] in precej drugih elementov:

  • Izreži in prilepi: Podpora za odložišče.
  • Funkcije dostopnosti: namenjene razvoju GUI za uporabnike s posebnimi potrebami.
  • Barve namizja so bile prvič predstavljene v Javi 1.1
  • Java 2D: ima izboljšano podporo za barve, slike in besedilo.

Značilnosti razreda Swing

  • Vtični videz in občutek.
  • Uporablja arhitekturo MVC.
  • Lahke komponente
  • Neodvisno od platforme
  • Napredne funkcije, kot so JTable, JTabbedPane, JScollPane itd.
  • Java je od platforme neodvisen jezik in deluje na katerem koli odjemalskem računalniku, videz in občutek grafičnega uporabniškega vmesnika, ki si ga lasti in zagotavlja operacijski sistem, specifičen za platformo, preprosto ne vpliva na GUI aplikacije, izdelan s komponentami Swing.
  • Lahke komponente: Začenši z JDK 1.1, njegovim razvojem lahkih komponent, ki ga podpira AWT. Da bi se komponenta kvalificirala kot lahka, ne sme biti odvisna od sistemskih razredov, ki ne temeljijo na Javi. Komponente Swing imajo svoj pogled, ki ga podpirajo razredi videza in občutka Jave.
  • Vtični videz in občutek: Ta funkcija omogoča uporabniku, da spremeni videz in občutek komponent Swing brez ponovnega zagona aplikacije. Knjižnica Swing podpira videz in občutek komponent, ki ostanejo enaki na vseh platformah, kjer koli se program izvaja. Knjižnica Swing ponuja API, ki daje resnično prilagodljivost pri določanju videza in občutka GUI aplikacije
  • Zelo prilagodljiv – Kontrolnike nihanja je mogoče prilagoditi na zelo enostaven način, saj je vizualni videz neodvisen od notranje predstavitve.
  • Bogate kontrole – Swing ponuja bogat nabor naprednih kontrolnikov, kot so Tree TabbedPane, drsnik, izbirnik barv in kontrolniki tabele.

Hierarhija razredov Swing

Hierarhija razredov Swing

Povezava MVC

  • Na splošno je vizualna komponenta sestavljena iz trije različni vidiki:
    1. Način, kako je komponenta videti, ko je upodobljena na zaslonu.
    2. Način, da se komponenta odzove na uporabnika.
    3. Informacije o stanju, povezane s komponento.
  • Z leti se je enokomponentna arhitektura izkazala za izjemno učinkovito: – Model-Pogled-Krmilnik oz MVC na kratko.
  • V terminologiji MVC je model ustreza informacijam o stanju, povezanim s komponento.
  • The pogled določa, kako je komponenta prikazana na zaslonu, vključno z vsemi vidiki pogleda, na katere vpliva trenutno stanje modela.
  • The krmilnik določa, kako se komponenta odziva na uporabnika.

Najenostavnejše komponente Swing imajo zmogljivosti, ki daleč presegajo komponente AWT, kot sledi:

  • Gumbi in oznake lahko prikazujejo slike namesto besedila ali poleg njega.
  • Obrobe okoli večine komponent Swing je mogoče preprosto spremeniti. Na primer, zunanjo stran oznake Swing je enostavno obrobiti z 1 slikovno piko.
  • Ni nujno, da so komponente gugalnice pravokotne. Gumbi so na primer lahko okrogli.
  • Zdaj lahko najnovejše tehnologije Assertive, kot so bralniki zaslona, ​​zlahka pridobijo informacije iz komponent Swing. Primer: orodje za branje zaslona lahko preprosto zajame besedilo, ki je prikazano na gumbu ali oznaki Swing.

Primer programov Java Swing

Primer 1: Razvijte program z oznako (swing) za prikaz sporočila GFG SPLETNO STRANI Kliknite:

Java




linux preimenuj imenik

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

>

>

str.substring v Javi

Izhod:

Java Swing za tiskanje sporočila in kliknite

Primer 2: Napišite program za ustvarjanje treh gumbov z napisi 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(); }> }>

>

>

Izhod:

Dodajte gumbe v okvir

Primer 3: Program za dodajanje potrditvenega polja v okvir

Java

kako izklopiti razvijalski način android




// 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(); }> }>

>

>

Izhod:

Dodajte potrditveno polje v okvir

Komponente Swing Class odstotek naloge

Razred Opis
Komponenta Komponenta je abstraktni osnovni razred za približno ne-menijske kontrole uporabniškega vmesnika Java SWING. Komponente predstavljajo objekt z grafično predstavitvijo.
Posoda Vsebnik je komponenta, ki lahko vsebuje komponente Java SWING
JComponent JComponent je osnovni razred za vse komponente uporabniškega vmesnika swing. Če želite uporabiti komponento swing, ki podeduje JComponent, mora biti komponenta v hierarhiji hrambe, katere koren je vsebnik Java Swing najvišje ravni.
JLabel JLabel je komponenta objekta za postavitev besedila v vsebnik.
JButton Ta razred ustvari označen gumb.
JColorChooser JColorChooser ponuja podokno s kontrolniki, ki uporabniku omogočajo manipulacijo in izbiro barve.
JCheckBox JCheckBox je grafična (GUI) komponenta, ki je lahko v on-(true) ali off-(false) stanju.
JRadioButton Razred JRadioButton je grafična (GUI) komponenta, ki je lahko v stanju on-(true) ali off-(false). v skupini
JList Komponenta JList predstavlja uporabnika z drsnim seznamom besedilnih elementov.
JComboBox Komponenta JComboBox uporabniku predstavi prikazni meni z možnostmi.
JTextField Objekt JTextField je besedilna komponenta, ki omogoča urejanje ene vrstice besedila.
JPasswordField Objekt JPasswordField je besedilna komponenta, specializirana za vnos gesel.
JTextArea Objekt JTextArea je besedilna komponenta, ki omogoča urejanje več vrstic besedila.
Imagelcon Kontrolnik ImageIcon je implementacija vmesnika Icon, ki slika ikone iz slik
JScrollbar Kontrolnik JScrollbar predstavlja komponento drsnega traku, ki uporabnikom omogoča izbiro med vrednostmi obsega.
JOptionPane JOptionPane ponuja niz standardnih pogovornih oken, ki uporabnike pozovejo k vrednosti ali nečemu.
JFileChooser JFileChooser, ki ga nadzoruje, predstavlja pogovorno okno, v katerem lahko uporabnik izbere datoteko.
JProgressBar Ko se opravilo približuje zaključku, vrstica napredka prikazuje odstotek opravil ob njegovem zaključku.
JSlides JSlider ta razred omogoča uporabniku grafično (GUI) izbiro z uporabo vrednosti z drsenjem gumba znotraj omejenega intervala.
JSpinner Ta razred JSpinner je enovrstični vnos, kjer je polje, ki uporabniku omogoča izbiro z uporabo števila ali vrednosti predmeta iz urejenega zaporedja.