5 가지 JAVA GUI 레이아웃 관리 방식
정의:
쉽게 말 하면 스 트림 레이아웃 은 창 크기 에 따라 창 내 구성 요소 의 위 치 를 자동 으로 바 꾸 는 것 입 니 다.예 를 들 어 원래 의 창 크기 는 한 줄 에 10 개의 BUTTON 을 수용 할 수 있 지만 창 을 축소 하면 줄 당 5 개의 BUTTON 만 수용 할 수 있 습 니 다.이때 원래 의 10 개의 BUTTON 중 5 개 는 자동 으로 다음 줄 로 배 열 됩 니 다.
예제:(panel 사용 생략)
Hashset
package ;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Layout { //
public static void main(String[] args) {
Frame frame = new Frame(); //
frame.setLayout(new FlowLayout(FlowLayout.LEFT)); // ,
Button button1 = new Button("button1"); //
Button button2 = new Button("button2");
Button button3 = new Button("button3");
Button button4 = new Button("button4");
Button button5 = new Button("button5");
frame.add(button1); //
frame.add(button2);
frame.add(button3);
frame.add(button4);
frame.add(button5);
frame.setBounds(200,200,500,500); //
frame.setVisible(true); //
frame.addWindowListener(new WindowAdapter() { // :
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
2.동서남북 중 포석(BorderLayout)정의:
동서남북 중 포석 은 말 그대로 다.창 구 를 동서 남북 중 네 개의'덩어리'로 나 누 는 것 을 상하 좌우 중 포석 이 라 고도 할 수 있어 이해 하기 쉽다.
예제:(panel 사용 생략)
package ;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class BorderLayout { //
public static void main(String[] args) {
Frame frame = new Frame();
frame.setLayout(new java.awt.BorderLayout());
Button east = new Button("East");
east.setBackground(new Color(140, 172, 51));
Button west = new Button("West");
west.setBackground(new Color(140, 172, 51));
Button north = new Button("North");
north.setBackground(new Color(38, 222, 135));
Button south = new Button("South");
south.setBackground(new Color(38, 222, 135));
Button center = new Button("Center");
frame.add(east, java.awt.BorderLayout.EAST);
frame.add(west, java.awt.BorderLayout.WEST);
frame.add(north, java.awt.BorderLayout.NORTH);
frame.add(south, java.awt.BorderLayout.SOUTH);
frame.add(center, java.awt.BorderLayout.CENTER);
frame.setBounds(200,200,500,500);
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
3.표 형식 레이아웃정의:
창 을 여러 개의 표 로 나 누고 구성 요 소 를 추가 합 니 다.
예시:
GUI 가 자주 사용 하 는'로그 인','등록'인터페이스
package ;
import javafx.scene.control.PasswordField;
import javafx.scene.layout.Pane;
import sun.security.util.Password;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.nio.charset.Charset;
public class GridLayout {
public static void main(String[] args) {
// System.out.println("file.encoding=" + System.getProperties().getProperty("file.encoding"));
// System.out.println(" :"+ Charset.defaultCharset().name());
Frame frame = new Frame(" ");
frame.setLayout(new java.awt.GridLayout(4,1)); //
Panel panel1 = new Panel();
frame.add(panel1);
Panel panel2 = new Panel();
frame.add(panel2);
Panel panel3 = new Panel();
frame.add(panel3);
Panel panel4 = new Panel();
frame.add(panel4);
Label label = new Label("welcome to *** system");
label.setFont(new Font(" ", Font.PLAIN, 26));
Label label1 = new Label("Account: ");
TextField textField = new TextField();
textField.setColumns(20);
Label label2 = new Label("Password: ");
TextField textField1 = new TextField(); //AWT passwordField
textField1.setColumns(20);
textField1.setEchoChar('*');
Button button = new Button("Login");
panel1.add(label);
panel2.add(label1);
panel2.add(textField);
panel3.add(label2);
panel3.add(textField1);
panel4.add(button);
frame.setBounds(200,200,500,250);
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
4.나 는 포석 을 원 하지 않 는 다!!!frame.setLayout(null)설정 하기;패 널 에 좌 표를 설정 하 는 방식 으로 구 조 를 제어 할 수 있 고 유연성 이 있 습 니 다!
package AWT;
import javafx.scene.layout.Pane;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
public class panel {
public static void main(String[] args) {
Frame frame = new Frame(); //new
Panel panel = new Panel(); //new
Panel panel1 = new Panel(); //new
Panel panel2 = new Panel(); //new
frame.setLayout(null); //
frame.setBounds(200,200,500,500); //
panel.setBounds(20,15,460,50); //
panel.setBackground(new Color(253, 228,1)); //
panel1.setBounds(20,70,100,415);
panel1.setBackground(new Color(0, 71, 254));
panel2.setBounds(130,70,350,415);
panel2.setBackground(new Color(1,1,1));
frame.add(panel); //
frame.add(panel1);
frame.add(panel2);
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}); {
}
}
}
5.난 다!!!화면 을 더욱 아름 답 게 하기 위해 서 는 다양한 레이아웃 의 내장 을 사용 할 수 있 습 니 다!
이상 은 5 가지 JAVA GUI 레이아웃 관리 방식 의 상세 한 내용 입 니 다.JAVA GUI 레이아웃 에 관 한 자 료 는 저희 의 다른 관련 글 을 주목 해 주 십시오!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JAVA 객체 작성 및 제거 방법정적 공장 방법 정적 공장 방법의 장점 를 반환할 수 있습니다. 정적 공장 방법의 단점 류 공유되거나 보호된 구조기를 포함하지 않으면 이불류화할 수 없음 여러 개의 구조기 파라미터를 만났을 때 구축기를 고려해야 한다...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.