728x90
728x90
기본 구조
// 항상 JFrame 클래스로부터 상속받아야 함
public class 클래스명 extends JFrame {
// 멤버변수 선언 //
private 자료형 컴포넌트명; // ex) private JButton button1;
private 자료형 배치관리자명; // ex) private FlowLayout flowLayout;
// 생성자 //
public 클래스명() {
initData();
setInitLayout();
}
// 생성자에 사용할 메서드 //
public void initData() {
// 창 제목
setTitle("제목");
// 창 크기
setSize(가로크기, 세로크기);
// 창을 끄면 프로그램도 같이 종료되도록 함
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 창 크기 조절 가능 여부 (기본값 = true)
setResizable(boolean);
// 창을 화면 가운데에 띄움
setLocationRelativeTo(null);
// 컴포넌트들의 인스턴스화
컴포넌트명 = new 자료형(매개변수);
// ex) button1 = new JButton("버튼이름");
// 배치 관리자의 인스턴스화
배치관리자명 = new 자료형(매개변수);
// ex) flowLayout = new FlowLayout(FlowLayout.LEFT, 10, 200);
}
// 생성자에 사용할 메서드 //
public void setInitLayout() {
// 레이아웃 지정
setLayout(배치관리자명); // ex) setLayout(flowLayout);
// 컴포넌트 추가 (생략 시 화면에 컴포넌트가 나타나지 않음)
add(컴포넌트명); // ex) add(button1);
// 창을 보이게 함 (기본값 = false)
setVisible(true);
}
// 코드 테스트 //
public static void main(String[] args) {
new 클래스명();
}
}
- 항상 JFrame 클래스로부터 상속받아야 함
- setVisible() 메서드의 위치에 따라 요소가 보이지 않을 수도 있으므로, 가장 마지막 순서로 배치
- JFrame에 빨간 글씨가 뜨면 [Ctrl] + [Space]로 import 명령어를 불러와야 함
320x100
반응형
'Java > Swing (GUI)' 카테고리의 다른 글
[Java/Swing] 배치 관리자 3 - NoLayout 구현 (0) | 2023.02.14 |
---|---|
[Java/Swing] 배치 관리자 2 - BorderLayout 구현 (0) | 2023.02.14 |
[Java/Swing] 배치 관리자 1 - FlowLayout 구현 (0) | 2023.02.14 |
[Java/Swing] paint 메서드를 활용한 집 그리기 (0) | 2023.02.14 |
[Java/Swing] javax.swing 패키지를 사용할 수 없는 문제 해결하기 (0) | 2023.02.14 |