Java BorderLayout Tutorial

I Java Swing GUI bibliotek (samt dens forløper AWT), er arrangementet av komponenter innenfor en ramme eller panel bestemmes av en implementering av LayoutManager grensesnittet. Den LayoutManager grensesnitt lar rammer for å opprettholde en konsistent arrangement av GUI komponenter på tvers av flere plattformer, \ "Se og føles, \" og vindusstørrelser. Den BorderLayout Manager er den mest brukte layout manager for relativt enkle skjema oppsett.

Den BorderLayout manager

Den BorderLayout Behandling deler rammen eller panelet i fem regioner, hver inneholdende en komponent. Disse regionene er oppkalt nord, sør, øst, vest, og CENTER. Den BorderLayout klassen har initialisert fem statiske konstanter som tilsvarer disse regionene som kan nås på følgende måte:

BorderLayout.NORTH
BorderLayout.SOUTH
BorderLayout.EAST
BorderLayout.WEST
BorderLayout.CENTER

Eksempel på BorderLayout

Bruke BorderLayout manager er en ganske grei prosess. Opprett en ny JFrame.

import javax.swing.

import java.awt.

JFrame vindu = new JFrame ()

Vi kan fortelle JFrame å bruke BorderLayout som sin layout manager ved å kjøre følgende kommando:

window.setLayout (ny BorderLayout ())

Også kan vi legge til en komponent til JFrame ved å ringe funksjonen add:

window.add (ny JButton (\ "Wonderful \"), BorderLayout.NORTH)

Dette vil fylle toppen (\ "NORTH \") i vinduet med stor knapp med ordet \ "Wonderful \" vises over den. Vi kan legge til andre elementer for å konsumere de andre regionene.

window.add (new JLabel (\ "Veldig flott \"), BorderLayout.SOUTH)

window.add (ny JTextArea (), BorderLayout.EAST)

window.add (ny JButton (\ "Glad \"), BorderLayout.WEST)

window.add (ny JComboBox (), BorderLayout.CENTER)

Etter dette vises BorderLayout til hans en vegg. Det kan bare inneholde fem komponenter, tross alt, strengt lagt ut i en av fem regioner. Men, dette er ikke sant.

Nøkkelen til effektiv Layout Manager-bruk

Hemmeligheten til å bruke layout ledere i Java Swing eller AWT er å forstå at paneler og andre container objekter selv regnet som en komponent, og at disse beholder objektene kan eie sin egen layout ledere for håndtering området i vinduet som har blitt gitt til dem. Det følgende eksempel illustrerer dette.

Panel pone = new Panel ()

window.add (pone, BorderLayout.CENTER); // Du må fjerne den forrige linje tildeling av en JComboBox () for å CENTER for at dette skal fungere.
pOne.setLayout (ny BorderLayout ())

pOne.add (ny JLable (\ "Dette er på nordsiden av pone, som selv er i midten av vinduet. \"), BorderLayout.NORTH)

Reelle søknader vil nesten alltid reir flere paneler og layout ledere som dette, for å oppnå ønsket oppsett av komponenter.