Layouts și poziționarea absolută în java swing, java swing și alte java

Crearea unei aplicații în Java Swing include crearea unei interfețe grafice a utilizatorului. Pentru a face acest lucru, biblioteca Java Swing a oferit un dezvoltator destul de mare de componente. Pentru a aranja componentele pe care le dorește dezvoltatorul, trebuie să utilizați managerii de layout sau poziția absolută.







Poziția absolută - setarea exactă a poziției și dimensiunii componentelor. Dacă utilizați un manager de layout specific, dezvoltatorul "cu precizie" nu specifică locația componentelor și dimensiunea acestora. Acum, să vedem cum să lucrăm cu poziționarea absolută.

Să luăm în considerare un exemplu. Avem un container JPanel pe care dorim să plasăm câteva componente. Dimensiunea și locația fiecărei componente pe care dorim să o specificăm exact cu ajutorul pixelilor. Ce trebuie făcut pentru asta?

Mai întâi trebuie să-i spuneți containerului că nu vom folosi managerul de aspect. Pentru aceasta, apelați metoda setLayout a containerului și transferați-l acolo ca parametru nul.

Panoul JPanel = nou JPanel ();
panel.setLayout (null);

Apoi, trebuie să creați componenta pe care dorim să o plasăm pe container și să folosim metoda setBounds pentru a specifica coordonatele și dimensiunile componentei. Metoda are patru parametri. Primii doi parametri sunt, respectiv, coordonatele X și Y ale punctului de sus din stânga al componentei, a doua pereche de numere fiind dimensiunile: lățimea și înălțimea.







Butonul JButton = nou JButton ("buton");
Button.setBounds (5, 5, 100, 30);

Să vedem aplicația de testare.

Layouts și poziționarea absolută în java swing, java swing și alte java

Creați panoul. Setați aspectul ei la nul. Apoi creați butoanele, spuneți-le unde vor fi localizate și ce dimensiune vor avea prin intermediul setBounds și adăugați-le panoului.

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

clasa publica TestFrame extinde JFrame

public TestFrame () super ("Cadru de testare");
createGUI ();
>

public void createGUI () setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);

Panoul JPanel = nou JPanel ();
panel.setLayout (null);

Butonul JButton1 = noul JButton ("butonul 1");
buton1.setBunuri (5, 5, 85, 30);
panel.add (butonul1);

Butonul JButton2 = noul JButton ("butonul 2");
buton2.setBunuri (95, 40, 85, 30);
panel.add (butonul2);

Butonul JButton3 = noul JButton ("butonul 3");
buton3.setBunuri (185, 75, 85, 30);
panel.add (butonul3);

setPreferredSize (noua dimensiune (285, 145));
>

statice void main (String [] args) publice javax.swing.SwingUtilities.invokeLater (nou Runnable () public void run () JFrame.setDefaultLookAndFeelDecorated (true);
Cadru TestFrame = TestFrame nou ();
frame.pack ();
frame.setLocationRelativeTo (null);
frame.setVisible (adevărat);
>
>);
>
>







Articole similare

Trimiteți-le prietenilor: