aspecte Swing

linkeri

Managerul de aspect este utilizat pentru poziționarea automată și stabilirea elementelor copilului în containere de dimensiuni. Linker este orice obiect care implementează o interfață LayoutManager sau LayoutManager2 (sprijină alinierea și restricțiile).

aspecte standard

  • BorderLayout - plasarea elementelor într-una din cele cinci regiuni, așa cum este indicat prin adăugarea unui element într-un container: în sus, în jos, stânga, dreapta, centru. În mod implicit, se adaugă elementul de la centru. În cazul în care această regiune este deja un element, acesta este înlocuit cu unul nou. Prin urmare, atunci când este necesar să se plaseze mai multe elemente în aceeași regiune, acestea sunt combinate într-un container (de obicei JPanel);
  • FlowLayout - plasează articole în ordine, în aceeași direcție ca și orientarea containerului (de la stânga la dreapta în mod implicit), folosind una dintre cele cinci tipuri de aliniere, specificat la crearea unui manager. Acest manager este implicit;
  • GridLayout - stabilește elementele din tabel. Numărul de coloane și rânduri este specificat la crearea unui manager. În mod implicit, o linie, iar numărul de coloane egal cu numărul de elemente. Întreaga zonă a containerului este împărțit în celule și dimensiunea fiecărui element este instalat în dimensiunea celulei. Este mai adecvat să se alinieze panourile și alte recipiente, mai degrabă decât controalele (nu avem nevoie de un buton gigant);
  • BoxLayout - plasarea elementelor vertical sau orizontal. De obicei, acesta nu este utilizat în mod direct, ci printr-o cutie de clasa container (caseta).

poziționare precisă și dimensionare

În cazul în care containerul nu este linker (metoda container setLayout a fost numit (nul)), poziția și dimensiunile elementelor necesare pentru a specifica în mod clar elementul metode

  • setLocation (punctul p) - muta componenta la punctul menționat;
  • setLocation (int x, int y) - muta componenta la punctul menționat;
  • setSize (Dimension d) - setați dimensiunile componentei;
  • setSize (latime int, inaltime int) - seteaza dimensiunile componentei;
  • setBounds (dreptunghi r) - mișcare și setați dimensiunile componentei (înscrise în dreptunghi);
  • setBounds (int x, int y, int latime, inaltime int) - mutare și instalați dimensiunile componente.

dimensiunile preferate

Componentele au minim, maxim și dimensiunile preferate. Unele aspecte folosind acești parametri, și, prin urmare, pot afecta activitatea lor, schimbându-le. Aceste dimensiuni pot fi, de asemenea, utile în dezvoltarea propriului aspect. În cazul în care toate dimensiunile componentei sunt egale, atunci spunem că componenta are o dimensiune fixă. Ia-și setați aceste valori pot fi metode:

  • getMaximumSize () - obținerea unei dimensiuni maxime;
  • setMaximumSize (Dimension d) - stabilirea dimensiunii maxime;
  • getMinimumSize () - obținerea dimensiunii minime;
  • setMinimumSize (Dimension d) - dimensiunea minimă a instalației;
  • getPreferredSize () - pregătirea dimensiunea dorită;
  • setPreferredSize (Dimension d) - setarea dimensiunea dorită.

linkeri mici

Există, de asemenea, două aspect de nivel scăzut, conceput pentru a forma programul de constructor SpringLayout și GroupLayout. Documentația poate fi descărcat într-un fișier SpringLayout SpringUtilities.java, în cazul în care sunt realizate două metode utile de aspect bazate pe ea (cum se spune pur și simplu apel metodele din acest fișier, fără a înfrupta detaliile :).

Clasa Box pune în aplicare containerul de legătură BoxLayout. În cazul în care elementele sunt plasate orizontal, înălțimea tuturor elementelor egală cu înălțimea de cel mai înalt element. O lățime a elementelor este astfel încât să umple întreaga lățime container. La schimbarea lățimii elementelor containerului proporțional întinse. În cazul în care se ajunge la toate elementele limitei de întindere (The getMaximumSize valoarea ()), atunci primul element este întinsă prin forță. În cazul în care există cel puțin un element disponibil pentru întindere, numai acesta este întins.

În mod similar apare și plasarea pe verticală. Lățimea tuturor elementelor egală cu lățimea elementului cel mai larg, și elemente pe înălțime este de a umple toată înălțimea recipientului. Acest lucru ar putea avea nevoie de o metodă de atribuire explicită pentru a alinia elementele setAlignmentX. În caz contrar, chiar și cu aceeași lățime, elementele sunt aranjate într-un bar frumos.

Clasa de cutie are metode statice pentru a crea elemente invizibile pentru diverse scopuri:

  • createHorizontalStrut (int lățime) - creează o componentă cu o lățime fixă. In elementul de stivuire orizontală este utilizat pentru a elibera spațiul dintre elementele adiacente sau elemente vor fi pervaze. Cu elementul de stivuire vertical este utilizat pentru a defini lățimea minimă a celorlalte elemente;
  • createVerticalStrut (inaltime int) - creează o componentă cu o înălțime fixă. Cu elementul de stivuire vertical este utilizat pentru a elibera spațiul dintre elementele adiacente sau elemente vor fi pervaze. În elementul de stivuire orizontală este folosit pentru a specifica înălțimea minimă a celorlalte elemente;
  • createRigidArea (Dimension d) - creează un element de dimensiune fixă ​​invizibil;
  • createGlue () - creează un componente strech invizibile. Folosit pentru a preveni elemente de forță de tracțiune. De exemplu, să presupunem că containerul elementele vizibile de dimensiune fixă. Apoi pune componenta de la începutul și la sfârșitul containerului, vom obține centrat elemente vizibile. Și dacă să-l loc după fiecare vizibil, prin creșterea dimensiunii containerului, elementele vizibile „dispersa“ în afară.

exemplu folosind linkeri

articole similare