Een grafische gebruikersinterface begint met een container op het hoogste niveau die een thuis biedt voor de andere componenten van de interface en het algemene gevoel van de toepassing bepaalt. In deze tutorial introduceren we de JFrame-klasse, die wordt gebruikt om een eenvoudig hoofdvenster voor een Java-toepassing te maken.
Java wordt geleverd met een set codebibliotheken die zijn ontworpen om programmeurs te helpen snel applicaties te maken. Ze bieden toegang tot klassen die specifieke functies uitvoeren, zodat u ze niet zelf hoeft te schrijven. De twee bovenstaande importinstructies laten de compiler weten dat de toepassing toegang nodig heeft tot een aantal vooraf gebouwde functionaliteit in de "AWT" - en "Swing" -codebibliotheken.
AWT staat voor "Abstract Window Toolkit". Het bevat klassen die programmeurs kunnen gebruiken om grafische componenten zoals knoppen, labels en frames te maken. Swing is bovenop AWT gebouwd en biedt een extra set meer geavanceerde grafische interfacecomponenten. Met slechts twee coderegels krijgen we toegang tot deze grafische componenten en kunnen we ze gebruiken in onze Java-applicatie.
Onder de importinstructies voert u de klassedefinitie in die onze Java-toepassingscode zal bevatten. Typ in:
De rest van de code uit deze tutorial gaat tussen de twee accolades. De klasse TopLevelWindow is als de omslagen van een boek; het laat de compiler zien waar hij naar de hoofdtoepassingscode moet zoeken.
Het is een goede programmeerstijl om sets van vergelijkbare opdrachten in functies te groeperen. Dit ontwerp maakt het programma beter leesbaar en als u dezelfde set instructies opnieuw wilt uitvoeren, hoeft u alleen maar de functie uit te voeren. Met dit in gedachten, groepeer ik alle Java-code die betrekking heeft op het maken van het venster in één functie.
Alle code om het venster te maken gaat tussen de accolades van de functie. Telkens wanneer de createWindow-functie wordt aangeroepen, zal de Java-applicatie een venster maken en weergeven met deze code.
Laten we nu kijken naar het maken van het venster met behulp van een JFrame-object. Typ de volgende code in en vergeet niet deze te plaatsen tussen de accolades van de createWindow-functie:
De JFrame-klasse zal het grootste deel van het werk doen om het venster voor ons te maken. Het neemt de complexe taak over om de computer te vertellen hoe het venster naar het scherm moet worden getekend en laat ons het leuke deel over hoe het eruit gaat zien. We kunnen dit doen door de kenmerken ervan in te stellen, zoals het algemene uiterlijk, de grootte, wat het bevat en meer.
Om te beginnen, laten we ervoor zorgen dat wanneer het venster wordt gesloten, de toepassing ook stopt. Typ in:
Aangezien een leeg venster weinig nut heeft, laten we er nu een grafische component in plaatsen. Voeg de volgende coderegels toe aan de functie createWindow om een nieuw JLabel-object te maken
Een JLabel is een grafische component die een afbeelding of tekst kan bevatten. Om het simpel te houden, is het gevuld met de tekst 'Ik ben een label in het venster'. en het formaat is ingesteld op een breedte van 300 pixels en een hoogte van 100 pixels.
De pack () methode kijkt naar wat het JFrame bevat, en stelt automatisch de grootte van het venster in. In dit geval zorgt het ervoor dat het venster groot genoeg is om het JLabel te tonen.
Het enige dat u hoeft te doen, is het toegangspunt voor de Java-toepassing toevoegen. Dit roept de functie createWindow () aan zodra de toepassing wordt uitgevoerd. Typ deze functie onder de laatste accolade van de createWindow () functie:
Nadat u op Enter hebt gedrukt, verschijnt het venster en ziet u uw eerste toepassing met vensters.
Goed gedaan! deze tutorial is de eerste bouwsteen voor het maken van krachtige gebruikersinterfaces. Nu je weet hoe je de container moet maken, kun je spelen met het toevoegen van andere grafische componenten.