I Java Swing GUI bibliotek (samt dens forløper AWT ) , ordningen av komponenter innenfor en ramme eller panel bestemmes av en implementering av LayoutManager grensesnitt. Den LayoutManager grensesnitt lar rammer for å opprettholde et konsekvent arrangement av GUI-komponenter på tvers av flere plattformer , "Se og føles ", og vindu størrelser . Den BorderLayout Manager er den mest brukte layout manager for relativt enkel form oppsett. Den BorderLayout leder
BorderLayout leder deler ramme eller panel inn i fem regioner, som hver inneholder én komponent . Disse regionene er oppkalt nord, sør, øst, vest, og CENTER . Den BorderLayout klassen er initialisert fem statiske konstanter som svarer til disse regionene som kan nås som
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 add funksjon : en
window.add (new JButton ( "Wonderful" ) , BorderLayout.NORTH ) ;
p Dette vil fylle toppen ( " NORTH ") del av 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 ) ; vindu . add (new JButton ( "Happy" ) , BorderLayout.WEST ) ; window.add ( ny JComboBox ( ) , BorderLayout.CENTER ) ;
Etter dette vises BorderLayout til hans 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 Usage
Hemmeligheten til å bruke layout ledere i Java Swing eller AWT er å forstå at plater og andre beholdere objekter seg telles som en komponent , og at disse beholder objektene kan ha sine egne layout ledere for håndtering området av vinduet som har blitt gitt til dem . Følgende eksempel illustrerer dette
Panel utsette = new Panel (); . Window.add ( utsette , BorderLayout.CENTER ), //Du må fjerne den forrige linjen fordele en JComboBox ( ) til CENTER for at dette skal fungere . pOne.setLayout ( ny BorderLayout ( )); pOne.add ( ny JLable ("Dette er på nordsiden av utsette , som selv er i midten av vinduet . ") , BorderLayout.NORTH ) ;
reelle søknader vil nesten alltid hekker flere paneler og layout ledere som dette , for å oppnå den ønskede layout av komponenter .