Flowlay-out is de standaardlay-out, wat betekent dat als u geen lay-out in uw code instelt, de lay-out standaard wordt ingesteld op Flow. Flow lay-out plaatst componenten (zoals tekstvelden, knoppen, labels, enz.) Op een rij, als horizontale ruimte niet voldoende is om alle componenten te bevatten, voegt Flow lay-out ze toe aan een volgende rij enzovoort.
Voorbeeld : hier is de afbeelding van een frame waaraan acht knoppen zijn toegevoegd aan een frame in de lay-out Flow. Zoals je kunt zien staan knoppen 7 en 8 op de tweede rij omdat de eerste zes knoppen alle horizontale ruimte innamen.
Aandachtspunten :
- Alle rijen in de Flow lay-out worden standaard in het midden uitgelijnd . Zoals u in de bovenstaande afbeelding kunt zien, staan knoppen 7 en 8 in het midden. We kunnen de uitlijning echter naar links of rechts instellen, we zullen er later in dit bericht meer over te weten komen.
- De standaard horizontale en verticale afstand tussen componenten is 5 pixels .
- Standaard zijn de componenten Oriëntatie van links naar rechts , wat betekent dat de componenten van links naar rechts zouden worden toegevoegd, maar we kunnen het ook van rechts naar links veranderen, dat zullen we later in dit bericht zien.
Voorbeeld van een eenvoudige stroomindeling
De afbeelding hierboven is de uitvoer van deze code. Hier voegen we 8 knoppen toe aan een frame en wordt de lay-out ingesteld op FlowLayout
.
import java.awt. *; openbare klasse FlowLayoutDemo breidt Frame { // constructeur public FlowLayoutDemo (String-titel) { / * Het zou het frame maken door te bellen * de constructor van de klasse Frame. * / super (titel); // Flow-layout instellen setLayout (nieuwe FlowLayout ()); // Een knop maken en toevoegen aan het frame Knop b1 = nieuwe knop ("Knop: 1"); toe te voegen (b1); / * Andere componenten aan het frame toevoegen * / Knop b2 = nieuwe knop ("Knop: 2"); toe te voegen (b2); Knop b3 = nieuwe knop ("Knop: 3"); toe te voegen (b3); Knop b4 = nieuwe knop ("Knop: 4"); toe te voegen (B4); Knop b5 = nieuwe knop ("Knop: 5"); toe te voegen (b5); Knop b6 = nieuwe knop ("Knop: 6"); toe te voegen (b6); Knop b7 = nieuwe knop ("Knop: 7"); toe te voegen (b7); Knop b8 = nieuwe knop ("Knop: 8"); toe te voegen (B8); } public static void main (String [] args) {FlowLayoutDemo-scherm = nieuwe FlowLayoutDemo ("Flowindeling - delphi-faq.net"); screen.setSize (400.150); screen.setVisible (true); } }
Stroomindeling waarbij de oriëntatie van rechts naar links is
De standaardrichting voor stroomindeling is van links naar rechts, maar we kunnen deze indien gewenst van rechts naar links instellen.
import java.awt. *; openbare klasse FlowLayoutDemo breidt Frame { // constructeur public FlowLayoutDemo (String-titel) { / * Het zou het frame maken door te bellen * de constructor van de klasse Frame. * / super (titel); // Flow-layout instellen setLayout (nieuwe FlowLayout ()); // Een knop maken en toevoegen aan het frame Knop b1 = nieuwe knop ("Knop: 1"); toe te voegen (b1); / * Andere componenten aan het frame toevoegen * / Knop b2 = nieuwe knop ("Knop: 2"); toe te voegen (b2); Knop b3 = nieuwe knop ("Knop: 3"); toe te voegen (b3); Knop b4 = nieuwe knop ("Knop: 4"); toe te voegen (B4); Knop b5 = nieuwe knop ("Knop: 5"); toe te voegen (b5); Knop b6 = nieuwe knop ("Knop: 6"); toe te voegen (b6); Knop b7 = nieuwe knop ("Knop: 7"); toe te voegen (b7); Knop b8 = nieuwe knop ("Knop: 8"); toe te voegen (B8); / * Dit zou de oriëntatie instellen op * Rechts naar links * / setComponentOrientation ( ComponentOrientation.RIGHT_TO_LEFT); } public static void main (String [] args) {FlowLayoutDemo-scherm = nieuwe FlowLayoutDemo ("Flowindeling - delphi-faq.net"); screen.setSize (400.150); screen.setVisible (true); } }
Output:
Links uitlijnen van componenten in FlowLayout
Zoals we in de bovenstaande voorbeelden hebben gezien, zijn de rijen in het midden uitgelijnd (kijk naar de knoppen 7 en 8 in de bovenstaande afbeelding). We kunnen de uitlijning echter wijzigen door de parameters door te geven aan de constructor van de stroomlay-out tijdens het instellen van de lay-out.
Om de uitlijning naar links te wijzigen, vervangt u de instructie setLayout(new FlowLayout());
met deze: setLayout(new FlowLayout(FlowLayout.LEFT));
in het voorbeeld 1. De uitvoer ziet eruit als de onderstaande afbeelding -
Juiste uitlijning van componenten in FlowLayout
Om de uitlijning naar rechts te wijzigen, vervangt u de instructie setLayout(new FlowLayout());
met deze: setLayout(new FlowLayout(FlowLayout.RIGHT));
in het voorbeeld 1. De uitvoer ziet eruit als de onderstaande afbeelding -
Laat een reactie achter