본문 바로가기
Java

[JAVA] 간단하게 버튼만 구현한 TODOList_1

by bkuk 2022. 9. 3.

To-Do-List 구현 1일차


package scheduler.checkbox.study;

import java.awt.BorderLayout;
import java.awt.Dimension;

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

public class frame {
	public static void main(String[] args) {
		JFrame frame = new JFrame("ToDoList");
		JPanel panel = new JPanel();
		JLabel label = new JLabel("To-Do-List");
		JPanel btnPanel = new JPanel();
		JButton btn1 = new JButton("Add Task");
		JButton btn2 = new JButton("Clear Complete Tasks");
		JTextArea txtArea = new JTextArea();
	
		frame.add(panel); 
		panel.setLayout(new BorderLayout());
		panel.add(label, BorderLayout.NORTH);
		label.setPreferredSize(new Dimension(100,100));
		panel.add(txtArea, BorderLayout.CENTER);
		
		label.setFont(label.getFont().deriveFont(50.0f));
		label.setHorizontalAlignment(JLabel.CENTER);
		
		panel.add(btnPanel, BorderLayout.SOUTH);
		btnPanel.add(btn1);
		btnPanel.add(btn2);
		
		frame.setVisible(true);
		frame.setSize(800, 600);
		frame.setResizable(true);
		frame.setLocationRelativeTo(null);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
	}
};

 

발생한 오류와 해결방법

		JFrame frame = new JFrame("ToDoList");
		JPanel panel = new JPanel();
		JLabel label = new JLabel("To-Do-List");
		JPanel btnPanel = new JPanel();
		JButton btn1 = new JButton("Add Task");
		JButton btn2 = new JButton("Clear Complete Tasks");
		JTextArea txtArea = new JTextArea();



		panel.add(label, BorderLayout.NORTH);
		frame.add(panel);
		panel.setLayout(new BorderLayout());

① panel에 label을 추가, label에 Border를 생성함과 동시에 Border 위치를 NORTH로 지정

  * panel.add(label, BorderLayout.NORTH);

 

② frame에 panel을 추가하고,

  * frame.add(panel);

 

③ panel의 Border를 생성함.

  * panel.setLayout(new BorderLayout());

 


label의 Border와 "TO-DO-List"라는 텍스트가 화면에 출력되지 않아 아래와 같이 순서를 변경함.


		JFrame frame = new JFrame("ToDoList");
		JPanel panel = new JPanel();
		JLabel label = new JLabel("To-Do-List");
		JPanel btnPanel = new JPanel();
		JButton btn1 = new JButton("Add Task");
		JButton btn2 = new JButton("Clear Complete Tasks");
		JTextArea txtArea = new JTextArea();
		
		
		
		frame.add(panel); 
		panel.setLayout(new BorderLayout());
		panel.add(label, BorderLayout.NORTH);

① frame에 panel을 추가하고,

  * frame.add(panel);

 

② panel의 Border를 생성함.

  * panel.setLayout(new BorderLayout());

 

③ panel에 label을 추가, label에 Border를 생성함과 동시에 Border 위치를 NORTH로 지정함.

  * panel.add(label, BorderLayout.NORTH);

 

 

 

 

 

'Java' 카테고리의 다른 글

[JAVA] JOptionPane(Method)_1  (0) 2022.09.05
[JAVA] ID와 Password 입력을 통한 로그인 구현  (0) 2022.09.04
[JAVA] 상수의 데이터 타입  (0) 2022.08.11
[JAVA] 데이터 타입  (0) 2022.08.11
[JAVA] 주석과 세미클론  (0) 2022.08.11

댓글