logo

Úvod do Java Swing

Houpačka je knihovna Java Foundation Classes [JFC] a rozšíření sady Abstract Window Toolkit [AWT]. Java Swing nabízí mnohem vylepšenou funkcionalitu oproti AWT, nové komponenty, rozšířené funkce komponent a vynikající zpracování událostí s podporou drag-and-drop.

Představení Java Swing

Swing má asi čtyřikrát více komponent uživatelského rozhraní [UI] než AWT a je součástí standardní distribuce Java. Podle dnešních požadavků na GUI aplikací je AWT omezenou implementací, která není zcela schopná poskytnout komponenty potřebné pro vývoj komplexních GUI požadovaných v moderních komerčních aplikacích. Sada komponent AWT má několik chyb a zabírá mnoho systémových prostředků ve srovnání s ekvivalentními prostředky Swing. Netscape představil svou knihovnu Internet Foundation Classes [IFC] pro použití s ​​Javou. Jeho třídy se staly velmi oblíbenými u programátorů vytvářejících GUI pro komerční aplikace.



  • Swing je sada API (API – sada tříd a rozhraní)
  • Swing je poskytován k návrhu grafického uživatelského rozhraní
  • Swing je knihovna rozšíření k AWT (Abstract Window Toolkit) 17:00 – 17:30
  • Obsahuje nové a vylepšené komponenty, které vylepšují vzhled a funkčnost GUI
  • Swing lze použít k sestavení (vývoji) samostatných swingových GUI aplikací jako servletů a apletů
  • Využívá architekturu návrhu modelu/pohledu.
  • Swing je přenosnější a flexibilnější než AWT, Swing je postaven na vrcholu AWT.
  • Swing je celý napsaný v Javě.
  • Komponenty Java Swing jsou nezávislé na platformě a komponenty Swing jsou lehké.
  • Swing Podporuje pluggable vzhled a dojem a Swing poskytuje výkonnější komponenty.
  • jako jsou tabulky, seznamy, posuvníky, výběr barev, panel s kartami atd.
  • Další swing následuje MVC.

Rozdíl mezi Java Swing a Java AWT

Existují určité body, ve kterých se Java Swing liší od Java AWT, jak je uvedeno níže:

Java AWT

Java Swing



pandy a numpy

Java AWT je API pro vývoj GUI aplikací v Javě.

Swing je součástí Java Foundation Classes a používá se k vytváření různých aplikací.

Komponenty AWT jsou těžké.



Komponenty Java Swing jsou lehké.

Komponenty jsou závislé na platformě.

Komponenty jsou nezávislé na platformě.

Doba provedení je více než Swing.

Doba provedení je kratší než AWT.

Komponenty AWT vyžadují balíček java.awt.

Komponenty Swing vyžadují balíček javax.swing.

Chcete-li se o tématu dozvědět více, viz Java Swing vs Java AWT .

Co je JFC?

JFC je zkratka pro Java Foundation Classes. JFC je sada komponent GUI, které zjednodušují desktopové aplikace. Mnoho programátorů si myslí, že JFC a Swing jsou jedna a ta samá věc, ale není tomu tak. JFC obsahuje Swing [balíček komponent uživatelského rozhraní] a řadu dalších položek:

  • Vyjmout a vložit: Podpora schránky.
  • Funkce usnadnění: Zaměřeno na vývoj GUI pro uživatele se zdravotním postižením.
  • Funkce barev plochy byly poprvé představeny v Javě 1.1
  • Java 2D: má vylepšenou podporu barev, obrázků a textu.

Vlastnosti Swing Class

  • Zapojitelný vzhled a dojem.
  • Používá architekturu MVC.
  • Lehké komponenty
  • Nezávislá na platformě
  • Pokročilé funkce jako JTable, JTabbedPane, JScollPane atd.
  • Java je jazyk nezávislý na platformě a běží na jakémkoli klientském počítači, vzhled GUI, vlastněný a dodávaný platformou specifickým O/S, jednoduše neovlivňuje GUI aplikace vytvořené pomocí komponent Swing.
  • Lehké komponenty: Počínaje JDK 1.1, jeho vývoj lehkých komponent podporovaný AWT. Aby se komponenta kvalifikovala jako odlehčená, nesmí záviset na žádné jiné systémové třídě než Java [O/s based). Komponenty Swing mají svůj vlastní pohled podporovaný třídami vzhledu a chování Java.
  • Připojitelný vzhled a dojem: Tato funkce umožňuje uživateli přepínat vzhled a chování komponent Swing bez restartování aplikace. Knihovna Swing podporuje vzhled a chování komponent, které zůstávají stejné na všech platformách, kdekoli program běží. Knihovna Swing poskytuje API, které poskytuje skutečnou flexibilitu při určování vzhledu a chování GUI aplikace
  • Vysoce přizpůsobitelné – Ovládací prvky swingu lze velmi snadno přizpůsobit, protože vizuální vzhled je nezávislý na vnitřní reprezentaci.
  • Bohaté ovládání – Swing poskytuje bohatou sadu pokročilých ovládacích prvků, jako je Tree TabbedPane, posuvník, výběr barev a ovládací prvky tabulky.

Hierarchie tříd swingu

Hierarchie tříd swingu

Připojení MVC

  • Obecně je vizuální komponenta složena z tři odlišné aspekty:
    1. Způsob, jakým komponenta vypadá při vykreslení na obrazovce.
    2. Způsob, jakým komponenta reaguje na uživatele.
    3. Informace o stavu přidružené ke komponentě.
  • V průběhu let se architektura jedné komponenty osvědčila jako mimořádně účinná: – Model-View-Controller nebo MVC ve zkratce.
  • V terminologii MVC, Modelka odpovídá stavovým informacím spojeným s Komponentou.
  • The Pohled určuje, jak se komponenta zobrazí na obrazovce, včetně všech aspektů pohledu, které jsou ovlivněny aktuálním stavem modelu.
  • The ovladač určuje, jak komponenta reaguje na uživatele.

Nejjednodušší komponenty Swing mají možnosti daleko za komponenty AWT, a to následovně:

  • Swing tlačítka a štítky mohou zobrazovat obrázky místo textu nebo navíc k němu.
  • Okraje kolem většiny komponent Swing lze snadno změnit. Například je snadné umístit 1pixelový okraj kolem vnější strany štítku Swing.
  • Swing komponenty nemusí být pravoúhlé. Kulaté mohou být například tlačítka.
  • Nyní nejnovější asertivní technologie, jako jsou čtečky obrazovky, mohou snadno získat informace z komponent Swing. Příklad: Nástroj pro čtení z obrazovky může snadno zachytit text, který je zobrazen na tlačítku Swing nebo štítku.

Příklad Java Swing programů

Příklad 1: Vyviňte program pomocí štítku (swingu) k zobrazení zprávy GFG WEB Site Click:

Jáva




java výjimky

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

>

>

Výstup:

Java Swing vytiskněte zprávu a klikněte

Příklad 2: Napište program pro vytvoření tří tlačítek s nápisem OK, SUBMIT, CANCEL.

Jáva




mylivecricket

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

>

>

Výstup:

Přidat tlačítka do rámečku

Příklad 3: Program pro přidání zaškrtávacího políčka do rámce

Jáva




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

shreya ghoshal
>

>

Výstup:

Přidat zaškrtávací políčko do rámečku

Komponenty Swingu Zařaďte procento úkolu

Třída Popis
Komponent A Component je základní třída Abstract pro ovládací prvky uživatelského rozhraní Java SWING bez nabídky. Komponenty představují objekt s grafickým znázorněním.
Kontejner Kontejner je komponenta, která může obsahovat komponenty Java SWING
JComponent JComponent je základní třída pro všechny komponenty uživatelského rozhraní swing Aby bylo možné použít komponentu swing, která dědí z JComponent, komponenta musí být v hierarchii zadržování, jejímž kořenem je kontejner Java Swing nejvyšší úrovně.
JLabel JLabel je objektová komponenta pro umístění textu do kontejneru.
JButton Tato třída vytvoří označené tlačítko.
JColorChooser JColorChooser poskytuje panel ovládacích prvků navržený tak, aby uživateli umožňoval manipulovat a vybírat barvu.
JCheckBox JCheckBox je grafická komponenta (GUI), která může být ve stavu zapnuto-(pravda) nebo vypnuto-(nepravda).
JRadioButton Třída JRadioButton je grafická (GUI) komponenta, která může být ve stavu on-(true) nebo off-(false). ve skupině
JList Komponenta JList představuje uživatele s rolovacím seznamem textových položek.
JComboBox Komponenta JComboBox představuje uživateli zobrazení nabídky možností.
JTextField Objekt JTextField je textová komponenta, která umožní editaci jednoho řádku textu.
JPasswordField Objekt JPasswordField je textová komponenta specializovaná na zadávání hesla.
JTextArea Objekt JTextArea je textová komponenta, která umožňuje úpravu více řádků textu.
Imagelcon Ovládací prvek ImageIcon je implementace rozhraní ikon, které maluje ikony z obrázků
JScrollbar Ovládací prvek JScrollbar představuje komponentu posuvníku, která uživatelům umožňuje vybírat z hodnot rozsahu.
JOptionPane JOptionPane poskytuje sadu standardních dialogových oken, která uživatele vyzve k zadání hodnoty nebo něčeho.
JFileChooser JFileChooser it Controls představuje dialogové okno, ze kterého může uživatel vybrat soubor.
JProgressBar Jak úkol postupuje k dokončení, indikátor průběhu zobrazuje procento úkolů při jeho dokončení.
JSlides JSlider této třídy umožňuje uživateli graficky (GUI) vybrat pomocí hodnoty posunutím knoflíku v ohraničeném intervalu.
JSpinner JSpinner této třídy je jednořádkový vstup, kde pole umožňuje uživateli vybrat pomocí čísla nebo hodnoty objektu z uspořádané sekvence.