Hoe om 'n venster in Java te sluit (met foto's)

INHOUDSOPGAWE:

Hoe om 'n venster in Java te sluit (met foto's)
Hoe om 'n venster in Java te sluit (met foto's)

Video: Hoe om 'n venster in Java te sluit (met foto's)

Video: Hoe om 'n venster in Java te sluit (met foto's)
Video: The END of Photography - Use AI to Make Your Own Studio Photos, FREE Via DreamBooth Training 2024, Mei
Anonim

Hierdie artikel sal u wys hoe u 'n venster in Java kan sluit. Dit is baie makliker om 'n venster toe te maak met behulp van Swing's

JFrame

maar dit is ook uitvoerbaar met behulp van AWT's

Raam

Stappe

Metode 1 van 2: Gebruik javax.swing. JFrame

Sluit venster java step1
Sluit venster java step1

Stap 1. Verkry 'n voorbeeld van a

JFrame

of skep 'n nuwe een.

Sluit venster java step2_with_import
Sluit venster java step2_with_import

Stap 2. Stel die standaard sluiting in

Die standaard sluiting word ingestel met behulp van die setter -metode in die

JFrame

klas

setDefaultCloseOperation

wat bepaal wat gebeur as op die sluitknoppie geklik word en die volgende parameters volg:

  • WindowConstants. EXIT_ON_CLOSE

    - Sluit die raam en beëindig die uitvoering van die program.
  • WindowConstants. DISPOSE_ON_CLOSE

    - Sluit die raam en beëindig nie noodwendig die uitvoering van die program nie.
  • VensterKonstante. HIDE_ON_CLOSE

    - Laat die raam lyk asof dit toegemaak is deur die sigbaarheidseienskappe daarvan onwaar te stel. Die verskil tussen

    HIDE_ON_CLOSE

    en

    DISPOSE_ON_CLOSE

  • is dat laasgenoemde al die hulpbronne wat deur die raam en sy komponente gebruik word, vrystel.
  • WindowConstants. DO_NOTHING_ON_CLOSE

    - Doen niks as die sluitknoppie ingedruk word nie. Dit is handig as u byvoorbeeld 'n bevestigingsdialoogvenster wil vertoon voordat die venster toegemaak word. U kan dit doen deur 'n

    VensterLuister

    na die raam en oorheersend

    venster sluit

    metode. Voorbeeld van die aangepaste sluiting:

      frame.setDefaultCloseOperation (WindowConstants. DO_NOTHING_ON_CLOSE); frame.addWindowListener (nuwe WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Vra vir bevestiging voordat die program beëindig word. int option = JOptionPane.showConfirmDialog (raam, "Is u seker dat u die toepassing wil sluit?", "Bevestiging sluit", JOptionPane. YES_NO_OPTION, JOptionPane. QUESTION_MESSAGE); if (option == JOptionPane. YES_OPTION) {System.exit (0);}}});

Metode 2 van 2: Gebruik java.awt. Frame

Sluit venster java step1 method2
Sluit venster java step1 method2

Stap 1. Verkry 'n voorbeeld van a

Raam

of skep 'n nuwe een.

Sluit venster java step2 method2
Sluit venster java step2 method2

Stap 2. Voeg venster luisteraar

Bel

addWindowListener

metode op die instansie. Die vereiste argument is

VensterLuister

. U kan elke metode van die

VensterLuister

koppelvlak of ignoreer slegs die metodes wat u benodig

VensterAdapter

klas.

Sluit venster java step3 method2
Sluit venster java step3 method2

Stap 3. Hanteer vensterafsluiting

Implementeer

venster sluit

metode van

VensterLuister

koppelvlak of ignoreer dit van

VensterAdapter

klas. Daar is twee maniere om 'n venster toe te maak:

  • Gooi die venster weg nadat u op die sluitknoppie geklik het:

    • Bel

      beskik

      metode binne

      venster sluit

    • metode.
    • frame.addWindowListener (nuwe WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Gooi die venster weg nadat daar op die sluitknoppie geklik is. gooi ();}});

  • Beëindig die program nadat op die sluitknoppie geklik is:

    • Bel

      System.exit

      metode binne

      venster sluit

    • metode.
    • frame.addWindowListener (nuwe WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Beëindig die program nadat op die sluitknoppie geklik is. System.exit (0);}});

Wenke

  • Swing word bo AWT verkies, aangesien laasgenoemde regtig verouderd is.
  • Gebruik

    VensterAdapter

    u hoef nie elke metode te implementeer nie

    VensterLuister

  • die kontrak ons vertel, maar slegs die wat ons nodig het.

Aanbeveel: